.NET使用CsvHelper快速读取和写入CSV文件
创作时间:
作者:
@小白创作中心
.NET使用CsvHelper快速读取和写入CSV文件
引用
1
来源
1.
https://www.cnblogs.com/Can-daydayup/p/18266135
在日常开发中,CSV文件的读写是一个常见的需求。本文将介绍如何在.NET中使用CsvHelper这个开源库快速实现CSV文件的读取和写入。
CsvHelper类库介绍
CsvHelper是一个.NET开源、快速、灵活、高度可配置、易于使用的用于读取和写入CSV文件的类库。
什么是 .csv 文件?
.csv 文件是一种用于存储表格数据的文本文件,CSV 是 "Comma-Separated Values" 的缩写,意思是 "逗号分隔值"。CSV 文件是一个存储表格和电子表格信息的纯文本文件,其内容通常是一个文本、数字或日期的表格。CSV 文件可以使用以表格形式存储数据的程序轻松导入和导出。
创建控制台应用
创建一个名为CsvHelperExercise的.NET 8控制台应用。
安装CsvHelper类库
通过NuGet包管理器搜索并安装CsvHelper。
定义CSV文件读取和写入的对象
public class StudentInfo
{
/// <summary>
/// 学生学号
/// </summary>
public int ID { get; set; }
/// <summary>
/// 学生姓名
/// </summary>
public string Name { get; set; }
/// <summary>
/// 学生年龄
/// </summary>
public int Age { get; set; }
/// <summary>
/// 班级
/// </summary>
public string Class { get; set; }
/// <summary>
/// 性别
/// </summary>
public string Gender { get; set; }
/// <summary>
/// 住址
/// </summary>
public string Address { get; set; }
}
写入CSV文件数据
static void Main(string[] args)
{
var students = new List<StudentInfo>
{
new StudentInfo { ID = 1, Name = "张三", Age = 20, Class = "终极一班", Gender = "男", Address = "北京市东城区" },
new StudentInfo { ID = 2, Name = "李四", Age = 21, Class = "终极一班", Gender = "女", Address = "上海市黄浦区" },
new StudentInfo { ID = 3, Name = "王五", Age = 22, Class = "终极一班", Gender = "男", Address = "广州市越秀区" },
new StudentInfo { ID = 4, Name = "赵六", Age = 20, Class = "终极二班", Gender = "女", Address = "深圳市福田区" },
new StudentInfo { ID = 5, Name = "孙七", Age = 23, Class = "终极二班", Gender = "男", Address = "杭州市西湖区" },
new StudentInfo { ID = 6, Name = "周八", Age = 24, Class = "终极二班", Gender = "女", Address = "南京市玄武区" },
new StudentInfo { ID = 7, Name = "吴九", Age = 22, Class = "终极二班", Gender = "男", Address = "成都市锦江区" },
new StudentInfo { ID = 8, Name = "小袁", Age = 21, Class = "终极三班", Gender = "女", Address = "重庆市渝中区" },
new StudentInfo { ID = 9, Name = "大姚", Age = 20, Class = "终极三班", Gender = "男", Address = "武汉市武昌区" },
new StudentInfo { ID = 10, Name = "追逐时光者", Age = 23, Class = "终极三班", Gender = "女", Address = "长沙市天心区" }
};
//写入CSV文件数据
using var writer = new StreamWriter(@".\StudentInfoFile.csv");
using var csvWriter = new CsvWriter(writer, CultureInfo.InvariantCulture);
csvWriter.WriteRecords(students);
}
读取CSV文件数据
快速读取上面写入到StudentInfoFile.csv中的数据。
static void Main(string[] args)
{
//读取CSV文件数据
using var reader = new StreamReader(@".\StudentInfoFile.csv");
using var csvReader = new CsvReader(reader, CultureInfo.InvariantCulture);
var getStudentInfos = csvReader.GetRecords<StudentInfo>().ToList();
}
热门推荐
如何撰写有效的购房申请?这些申请应包含哪些关键信息?
分布式电源技术支持服务指南:从来源到成本效益分析
探索光耦:光耦在开关电源中的应用——保障高效、安全的电源控制
产能跃居世界前三!T700 级碳纤维国内称霸,中复神鹰的崛起之道何在?
普通人5G还没用明白,6G就已经准备要来了,通讯大佬透露落地时间
是陈思诚一直在迎合观众,还是观众本来就喜欢他的品位?
胃癌预后受哪些因素影响?一文读懂关键影响因素
自由搏击运动的起源
戒断反应有哪几种
全球新兴CBD的发展模式和经验启示
维生素摄入需谨慎,过量反成“健康杀手”
什么动物吃蟑螂?大自然的蟑螂捕食者
隐形牙套与种植牙哪个更适合你?了解两者的优缺点与选择指南
吃蛋白质会消耗脂肪吗
断碳水化合物减肥法:原理、效果与注意事项
怀孕期间如何服用维生素?孕妇需要补充哪些营养素?
经常在睡前玩手机,用不了多久,或会摊上这5个“毛病”
电镀不良之原因分析及防范措施
心理健康科普小知识
如何在PC端编辑苹果手机相册,之后同步到手机里
Nature子刊:每天刷牙两次可以有效降低患痴呆症的风险
银行的外汇保证金交易如何避免爆仓风险?
《射雕英雄传:侠之大者》热映!电影“魔改”原著会有哪些法律风险?
定向招生是什么意思?定向招生和统招有什么区别?
如何在各地计算公积金?计算时要遵循哪些标准?
家中如何放置物品以镇宅保平安 镇宅物品的选择与摆放技巧
家居布置技巧,轻松提升生活品质
全面提升1000米跑步成绩:从训练到饮食的全方位指南
入口苦后甜的茶叶种类及特点介绍
如何种植萝卜?萝卜最佳的种植时间是什么时候?凤凰植保节解析