WinForm--DataGridView导出数据到CSV文件

 1 /// <summary>
 2         /// 导出数据到CSV文件
 3         /// </summary>
 4         /// <param name="fileName"></param>
 5         /// <param name="table"></param>
 6         private void ExportDataToCSV(string fileName, DataTable table)
 7         {
 8             if (table == null || table.Rows.Count == 0)
 9             {
10                 return;
11             }
12 
13             SaveFileDialog saveDlg = new SaveFileDialog();
14             saveDlg.Filter = "CSV文件(*.csv)|*.csv";
15             saveDlg.FileName = fileName + DateTime.Now.ToString("yyyyMMdd");
16 
17             if (saveDlg.ShowDialog() == DialogResult.OK)
18             {
19                 FileStream fs = new FileStream(saveDlg.FileName, FileMode.Create);
20                 StreamWriter write = new StreamWriter(fs, Encoding.Default);
21                 try
22                 {
23                     //标题行
24                     string userCode = table.Columns["UserCode"].ColumnName = "用户名称";
25                     string userKey = table.Columns["UserKey"].ColumnName = "用户编码";
26                     string isRegist = table.Columns["IsRegist"].ColumnName = "是否注册";
27                     string serial = table.Columns["Serial"].ColumnName = "序列号";
28                     string isEnable = table.Columns["IsEnable"].ColumnName = "是否启用";
29                     write.Write(userCode + ",");
30                     write.Write(userKey + ",");
31                     write.Write(isRegist + ",");
32                     write.Write(serial + ",");
33                     write.Write(isEnable + ",");
34 
35                     write.WriteLine();
36 
37                     //明细行
38                     for (int row = 0; row < table.Rows.Count; row++)
39                     {
40                         string Tem = "";
41                         for (int column = 2; column <= table.Columns.Count - 1; column++)
42                         {
43                             if (table.Rows[row][column] != DBNull.Value)
44                             {
45                                 string TemString = table.Rows[row][column].ToString().Trim();
46                                 Tem += TemString + "	";
47                                 Tem += ",";
48                             }
49                             else
50                             {
51                                 string TemString = "";
52                                 Tem += TemString;
53                                 Tem += ",";
54                             }
55                         }
56                         write.WriteLine(Tem);
57                     }
58                     write.Flush();
59                     write.Close();
60                     MessageBox.Show("导出成功:" + saveDlg.FileName.ToString().Trim());
61                 }
62                 catch (Exception ex)
63                 {
64                     MessageBox.Show(ex.ToString());
65                     write.Close();
66                 }
67             }
68         }
原文地址:https://www.cnblogs.com/zhaoyl9/p/12874194.html