C# CSV工具类,读取csv文件、将数据导出为csv文件格式,用DataGridView表格控件显示

embedded/2024/10/31 9:10:26/

  CSVHelper.cs工具类能够将CSV格式的文件读取到程序中,转换为内存中DataTable类型的数据,可以作为数据源直接给到DataGridView控件以表格形式显示csv中的数据。也可以导出程序中DataTable类型数据为CSV文件。

  使用示例:

1、准备一个csv文件

2、在程序中调用CSVHelper.CSVToDataTableByStreamReader()函数

private void btn_ImportCSV_Click(object sender, EventArgs e){#region 选择导入文件路径string OpenFilePath = "";OpenFileDialog ofd = new OpenFileDialog();ofd.Title = "浏览";ofd.Filter = "文本文件|*.trc;*.csv;*.asc";  //这是设置扩展名。if (ofd.ShowDialog() == DialogResult.OK){OpenFilePath = ofd.FileName;}else{return;}#endregion//调用函数将csv文件中的数据抓换为dataTable类型数据dataTable = CSVHelper.CSVToDataTableByStreamReader(OpenFilePath, Encoding.UTF8);//将数据源给到DataGridView控件dgv_CSV.DataSource = dataTable;}

3、CSVHelper函数的调用效果如下

导入csv文件

CSVHelper工具类中封装的功能函数

主要包括三个功能函数

/// <summary>
/// CSV转换成DataTable(OleDb数据库访问方式)
/// </summary>
/// <param name="csvPath">csv文件路径</param>
/// <returns></returns>
public static DataTable CSVToDataTableByOledb(string csvPath)/// <summary>
/// CSV转换成DataTable(文件流方式)
/// </summary>
/// <param name="csvPath">csv文件路径</param>
/// <param name="csvEncoding">csv文件字符编码格式</param>
/// <returns></returns>
public static DataTable CSVToDataTableByStreamReader(string csvPath, Encoding csvEncoding)/// <summary>
/// DataTable 生成 CSV
/// </summary>
/// <param name="dt">DataTable</param>
/// <param name="csvPath">csv文件路径</param>
public static void DataTableToCSV(DataTable dt, string csvPath)

「CSVHelper.cs」链接 :https://pan.quark.cn/s/7ca8bcf8ba56

「CSV示例程序」链接:https://pan.quark.cn/s/07be96316f82

数据导出到csv文件示例

导出csv文件

查看导出效果

「CSVHelper.cs」链接 :https://pan.quark.cn/s/7ca8bcf8ba56

「CSV示例程序」链接:https://pan.quark.cn/s/07be96316f82


http://www.ppmy.cn/embedded/133828.html

相关文章

为什么音频采样率通常是44.1kHz?

计算机中操作和存储只能是类似10101011这样的二进制数字&#xff0c;对于自然界中音频原始信号则为模拟信号&#xff0c;如下一个1kHz的音频信号&#xff0c;如果要转化为数字音频信号&#xff0c;则需要采样&#xff0c; 通常我们会采用44.1kHz的频率来进行采样&#xff0c;在…

WUP-MY-POS-PRINTER 旻佑热敏打印机票据打印uniapp插件使用说明

插件地址&#xff1a;WUP-MY-POS-PRINTER 旻佑热敏打印机票据打印安卓库 简介 本插件主要用于旻佑热敏打印机打印票据&#xff0c;不支持标签打印。适用于旻佑的各型支持票据打印的热敏打印机。本插件开发时使用的打印机型号为MY-805嵌入式面板打印机&#xff0c;其他型号请先…

Python Pycharm下载

pycharm-professional-2023.3.3 python-3.9.0-amd64.exe 链接&#xff1a;https://pan.baidu.com/s/1YYf835hlleeDksPMmX9y2g?pwd9x16 提取码&#xff1a;9x16 更多资料获取学习书籍下面搜一搜这里不迷路&#xff0c;回复关键字获取&#xff1a;python

算法刷题-小猫爬山

本题来源165. 小猫爬山 - AcWing题库 翰翰和达达饲养了 NN 只小猫&#xff0c;这天&#xff0c;小猫们要去爬山。 经历了千辛万苦&#xff0c;小猫们终于爬上了山顶&#xff0c;但是疲倦的它们再也不想徒步走下山了&#xff08;呜咕>_<&#xff09;。 翰翰和达达只好花…

xpath爬虫

xpath是什么 xpath是在XML文档中搜索内容的一门语言 html是xml的一个子集 具体实现 主要依靠lxml类中的etree demo代码 用法1、XML from lxml import etree xml """ <book> <id>1</id> <name> <nick id"10…

酱香经典——茅台镇的酱酒“四台”的传奇

“不在仁怀&#xff0c;便在通往仁怀的路上”&#xff0c;这句话生动地描绘了仁怀产区对酱酒文化的深远影响&#xff0c;这里不仅是世界十大烈酒产区之一&#xff0c;更是酱酒灵魂的栖息地。在仁怀茅台镇这一核心腹地&#xff0c;孕育了无数酱酒品牌&#xff0c;其中更有酱酒“…

百度集度嵌入式面试题及参考答案

linux 系统之间通信机制有哪些? Linux 系统之间存在多种通信机制,以下是一些常见的通信机制及其详细介绍。 管道(Pipe) 原理:管道是一种半双工的通信方式,数据只能单向流动。它基于文件描述符,在创建管道时会生成两个文件描述符,一个用于写入数据,另一个用于读取数据。…

详解RabbitMQ三种队列类型

RabbitMQ 是一个强大的消息队列系统&#xff0c;它提供了多种队列类型以满足不同的使用需求。本文将探讨三种主要队列类型&#xff1a;经典队列、仲裁队列和流式队列&#xff0c;并讨论它们的区别和选型建议。 经典队列&#xff08;Classic Queues&#xff09; 简介&#xff…