我想知道如何使用CsvHelper将List写入CSV。我已经在这里看过了:https://github.com/JoshClose/CsvHelper/issues/837。
我在CSV类中有以下属性:
public class CSV
{
public int? Id { get; set; }
public List<string> Header1 { get; set; }
public string Header2 { get; set; }
public string Header3 { get; set; }
public string Header4 { get; set; }
public long? Header5 { get; set; }
public long? Header6 { get; set; }
public long? Header7 { get; set; }
public string Header8 { get; set; }
public List<string> Header9 { get; set; }
public List<string> Header10 { get; set; }
public List<string> Header11 { get; set; }
}
写入CSV文件
var records = new List<CSV>
{
new CSV { Header1 = new List<string>{ "value1", "value2" } }
};
using (var writer = new StreamWriter("path\\to\\file.csv"))
using (var csv = new CsvWriter(writer, CultureInfo.InvariantCulture))
{
csv.WriteRecords(records);
}
最终结果应该是这样的。
Header1
value1,value2
任何帮助都将不胜感激。
using (var writer = new StreamWriter(@"c:\test.csv"))
。 - undefinedHeader1 = "value1","value2"
看起来有点奇怪...你怎么能把两个字符串值赋给一个字符串?我猜你想要Header1 = "value1, value2"
吧?即使Header1
是一个List<string>
,这样的赋值也是不行的。在这种情况下,你应该使用Header1 = new List<string> { "value1","value2"}
。不清楚你到底想要实现什么。 - undefined