在字符串中拆分\"

Der*_*k W 2 c# csv split

所以我有这个CSV文件,它的内容是这样的......

"Name","Age","Gender","City, State"
Run Code Online (Sandbox Code Playgroud)

到目前为止,我已经成功地删除了双引号 - 除了包含以下代码的第一个和最后一个条目.

using (StreamReader reader = new StreamReader(outputReport))
{
    headers = reader.ReadLine().Split(new string[] { "\",\"" }, 
               StringSplitOptions.RemoveEmptyEntries);
} 
Run Code Online (Sandbox Code Playgroud)

这会产生一个字符串数组,其内容为:

\"Name
Age
Gender
City, State\"
Run Code Online (Sandbox Code Playgroud)

我已经多次尝试删除了 \"

包括将此添加到我的拆分条件:

String.Concat('\\','\"')
Run Code Online (Sandbox Code Playgroud)

还有这个:

"\\\""
Run Code Online (Sandbox Code Playgroud)

但似乎没有任何工作,我觉得我应该能够在Split方法中删除它们.这是一个棘手的字符串匹配.有任何想法吗?谢谢您的帮助!

Joe*_*orn 8

不要String.Split()用来读取CSV数据!

边缘情况太多了.你刚刚来到冰山一角.而且,它比它需要的慢得多.您需要专用的CSV解析器.框架(Microsoft.VisualBasic.FileIO.TextFieldParser)内置了一个,有几个你可以下载和使用,包括FastCSV我自己的EasyCSV.