C#分享一个好的CSV编写器?可能重复:WritingCSVfilesin.netC#有没有好的CSV编写器?不需要读者,只需要作家。没什么,真的……这是我用了几年的代码:ESCAPED_QUOTE);如果(s.IndexOfAny(CHARACTERS_THAT_MUST_BE_QUOTED)>-1)s=QUOTE+s+QUOTE;返回s;}publicstaticstringUnescape(strings){if(s.StartsWith(QUOTE)&&s.EndsWith(QUOTE)){s=s.Substring(1,s.Length-2);如果(s.Contains(ESCAPED_QUOTE))s=s.Replace(ESCAPED_QUOTE,QUOTE);}返回s;}privateconststringQUOTE=""";privateconststringESCAPED_QUOTE="""";privatestaticchar[]CHARACTERS_THAT_MUST_BE_QUOTED={',','"','n'};您可以使用Escape方法来确保该值被正确引用。我在一个简单的阅读器上使用这个类,但你说你不需要...更新它很简单,但它比string.Join快。细绳。加入。然而,如果你有一个值数组(并且使用C#3+),你仍然可以使用一些非常简单的东西:string.Join(",",values.Select(Csv.Escape));写作相当简单,但图书馆可以为你做很多好事。例如,编写自定义对象。下面是使用CsvHelper(我维护的库)编写对象的示例。//自定义对象。公共类MyCustomObject{公共字符串StringProperty{得到;放;}publicintIntProperty{得到;放;}}//写入CSV文件。varmyCustomObjectList=newList{newMyCustomObject{StringProperty="one",IntProperty=1},newMyCustomObject{StringProperty="two",IntProperty=2}};varcsv=newCsvHelper(File.OpenWrite("some-file.csv"));csv.Writer.WriteRecords(myCustomObjectList);默认情况下,约定用于编写标头。这都是可配置的。以上是C#学习教程:AgoodCSVwriterforC#?如果分享的内容对你有用,需要进一步了解C#学习教程,希望大家多多关注—//Output:StringProperty,IntProperty一,1二,2本文收集自网络且不代表立场。如涉及侵权,请点击右侧联系管理员删除。如需转载请注明出处:
