Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 使用逗号分隔的方式读取csv,使用streamreader忽略双引号和空格_C#_Csv - Fatal编程技术网

C# 使用逗号分隔的方式读取csv,使用streamreader忽略双引号和空格

C# 使用逗号分隔的方式读取csv,使用streamreader忽略双引号和空格,c#,csv,C#,Csv,我有一个CSV,在记事本中打开时,其数据如下所示: TEST DATA1,,,,,, TEST DATA,,,,,, ",12:10,,10:30",,,,",,11:30",,",,12:30" location,Value1,,Value2,,Value3 mumbai-20,1.2,,,2.3,,3.4 pune-33,1.8,,,2.34,,4.5 我想使用streamReader来阅读本文,忽略逗号、双引号和空格 我使用的代码是 var reader = new Stream

我有一个CSV,在记事本中打开时,其数据如下所示:

TEST DATA1,,,,,,
TEST DATA,,,,,,
",12:10,,10:30",,,,",,11:30",,",,12:30"
location,Value1,,Value2,,Value3
mumbai-20,1.2,,,2.3,,3.4
pune-33,1.8,,,2.34,,4.5
我想使用streamReader来阅读本文,忽略逗号、双引号和空格

我使用的代码是

    var reader = new StreamReader(File.OpenRead(@"D:\Test.csv"));
      while (!reader.EndOfStream)
               {
var line = reader.ReadLine();
 var array = line.Split(',');
 foreach (var element in array)
                   Console.WriteLine(element);

               }
String.Split()。它无法处理各种各样的边缘情况。您需要一个专用的解析器

这将使用以下方法复制您的样本:

foreach(CSV.FromFile(@“D:\Test.CSV”)中的IList行)
{
foreach(行中的字符串元素)
{
控制台写入线(元素);
}
}

代码中只包含一个源文件。

var lines=file.ReadLines(@“D:\Test.csv”)。选择(a=>a.Split(“,”).ToArray()为什么不使用它来读取字符串数组元素。。?另外,当您使用split方法时,它会根据您的delim将数据拆分为字符串[],因此不确定您说的忽略逗号、双引号和空格是什么意思。。另请看
StringSplitOptions
enummeans CSV数据包含双引号和空格,因为有多行数据CSV中的某些列为空白。我不想使用CSV解析器。有没有一种方法我不能用streamReader来做这些?
foreach (IList<string> row in CSV.FromFile(@"D:\Test.csv") )
{
    foreach(string element in row)
    {
        Console.WriteLine(element);
    }
}