我正在尝试将 CSV 文件解析为 C# 中的二维数组。我有一个非常奇怪的问题,这是我的代码:
string filePath = @"C:\Users\Matt\Desktop\Eve Spread Sheet\Auto-Manufacture.csv";
StreamReader sr = new StreamReader(filePath);
data = null;
int Row = 0;
while (!sr.EndOfStream)
{
string[] Line = sr.ReadLine().Split(',');
if (Row == 0)
{
data = new string[Line.Length, Line.Length];
}
for (int column = 0; column < Line.Length; column++)
{
data[Row, column] = Line[column];
}
Row++;
Console.WriteLine(Row);
}
我的 .csv 文件有 87 行,但在执行中存在一个奇怪的问题,它会完全按照预期将前 15 行读入数据数组,但是当它data[Row, column] = Line[column];
第 16 次到达该行时,它似乎刚刚爆发整个循环(sr.EndOfStream
不满足条件)并且不再将任何数据读入数据数组。
谁能解释可能发生的事情?