【发布时间】:2011-08-03 13:35:30
【问题描述】:
我正在尝试从包含 100 行的 CSV 文件中获取第二个值。我得到了前 42 个值,然后它停止了……没有错误消息,或者根本没有错误处理。我很困惑,我在时间线上。它也对 TSV 文件执行此操作,但会给出前 43 个结果。如果你觉得奇怪,请帮忙告诉我。
我正在使用流式阅读器,将每一行读入一个字符串数组,拆分数组并获取第二个值并将其添加到列表中......
string path = @"C:\Users\dave\Desktop\codes\testfile.txt";
StreamReader sr = new StreamReader(path);
List<string> stkno = new List<string>();
foreach (var line in path)
{
string s = sr.ReadLine();
string[] words = s.Split(',');
stkno.Add(words[1]);
}
var message = string.Join(",", stkno.ToArray());
MessageBox.Show(message);
【问题讨论】:
-
没有例外?如果你单步执行循环会怎样?
-
@Dave_P - 请帮自己一个忙,不要使用该字符串来获取文件的路径。请简单地获取当前用户的桌面路径并从那里开始工作。您还可以考虑将文件本地放置到应用程序本身。
-
你为什么要给我一个-1?
标签: c# visual-studio-2010 csv split generic-list