分享

C# 写入CSV文件

 Csharp小记 2023-10-29 发布于江苏
     有读取就有写入。上一篇写了我们使用文件流读取CSV文件,这次我们采用文件流来将数据写入到CSV文件。
    关于文件流的其他操作,可以查看我发布的其他的文章


实现功能:
将dataGridView中的数据导出到CSV文件
开发环境:
开发工具:Visual Studio 2013.NET Framework版本:4.5

实现代码:

 //初始化数据 private void BindData()        {            //初始化DataTable数据            DataTable dts = new DataTable();            dts.Columns.Add("姓名");            dts.Columns.Add("性别");            dts.Columns.Add("年龄");
dts.Rows.Add("张三", "男", 20); dts.Rows.Add("李四", "女", 21); dts.Rows.Add("王五", "妖", 22); //将数据显示到dataGridView1 dataGridView1.DataSource = dts; }

private void WriteCSV()        {            //获取dataGridView1的数据源            DataTable dt = dataGridView1.DataSource as DataTable;            //文件流写入            System.IO.FileStream fs = new System.IO.FileStream("d:\\1.csv", System.IO.FileMode.OpenOrCreate);            System.IO.StreamWriter sw = new System.IO.StreamWriter(fs, Encoding.GetEncoding("gb2312"));
//将表头写入文件第一行 string dcStr = ""; foreach (DataColumn dc in dt.Columns) { dcStr += dc.ColumnName + ","; } sw.WriteLine(dcStr);
//将每行数据写入文件 string drStr = ""; foreach (DataRow dr in dt.Rows) { foreach (DataColumn dc in dt.Columns) { drStr += dr[dc] + ","; } sw.WriteLine(drStr); drStr = ""; }
//输出缓冲区内的数据 sw.Flush(); //释放流 sw.Close(); fs.Close(); }
实现效果:

由简入繁,拿来即用【关注我,后续更精彩】

    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多