在导出CSV文件时处理引号中的逗号.任何建议

本文关键字:任何建 处理 CSV 文件 | 更新日期: 2023-09-27 17:49:30

大家好我正在阅读一个csv文件,我遇到了一个问题,当有一个逗号在字段

这一切都可以,直到我得到一个逗号中的逗号所有字段的周围都有"。

             string delimiter=",";
         using (var sr = new StreamReader(fileName))
        {
                sr.ReadLine(); //skip headers
                while (!sr.EndOfStream)
                {
                   var readline = sr.ReadLine();
                   if (readline == null) continue;
                   var fields = readline.Split  (delimiter.ToCharArray());  
                 }
            }if I CANNOT split because of commas within quotation . How can I recode it?

我不能使用开源或第三方库。

有什么建议吗?

在导出CSV文件时处理引号中的逗号.任何建议

使用TextFieldParser类。

MSDN上的描述为:

提供解析结构化文本文件的方法和属性。

它位于Microsoft.VisualBasic.FileIO命名空间中,所以不是第三方的,也不是开源的。

它是一个托管类,所以你可以简单地添加一个引用,导入命名空间并使用。

使用例子:

using(var fileReader = New TextFieldParser("C:'ParserText.txt"))
{
    fileReader.TextFieldType = FieldType.Delimited;
    fileReader.SetDelimiters(",");
    ...
}

由于第三方库已经出来了,一些选择(可能还有其他):

  • 自己写一个支持引用的CSV阅读器
  • 使用ODBC -见这里的最后一页
相关文章: