将数据列表转换为 csv 文件

阿杰·马纳贡

我有 5 个来自数据库的数据集,并将它们保存在列表中,如下所示:

var list1 = new List<Class1>
var list2 = new List<Class2>
var list3 = new List<Class3>
var list4 = new List<Class4>
var list5 = new List<Class5>

我需要将所有 5 个列表转换为一个 csv 文件(excel 类型)。到目前为止,我只能对 lis1 数据集执行此操作。我们如何合并所有列表并以 CSV 格式打印数据?

迈萨姆·阿萨迪

csv文件的格式如下

Year,Make,Model,Length
1997,Ford,E350,2.35
2000,Mercury,Cougar,2.38

以下代码显示了如何实现它,或者您可以使用现成的库。

public void WriteToCSV()
{
   var csv = new StringBuilder();
   foreach (var item in list1)
   {
       string line = "field1,field2,...";
       csv.AppendLine(line);
       line = string.Format("{0},{1},...",item.field1,...);
       csv.AppendLine(line);
   }
   //.........................................
   //.........................................
   foreach (var item in list5)
   {
       string line = "field1,field2,...";
       csv.AppendLine(line);
       line = string.Format("{0},{1},...",item.field1,...);
       csv.AppendLine(line);
   }      


    string fileName = @"D:\WriteText.csv";
    if (File.Exists(fileName))
      System.IO.File.AppendAllText(fileName, csv.ToString());
    else
      System.IO.File.WriteAllText(fileName, csv.ToString());
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章