我正在尋找從CSV文件讀取數據的最快方法。我嘗試了這兩種不同的方式。從CSV文件讀取數據
方法#1:讀取所有從CSV文件中的行的成陣列的隨後迭代數組:
String[] csv = File.ReadAllLines(@"E:\be.csv");
for (int i = 0; i < csv.Length; i++)
{
tx.Text = csv[i];
tx.Refresh();
}
方法#2 *:使用StreamReader
:
StreamReader sr = new StreamReader(new FileStream(@"E:\be.csv");
while (!sr.EndOfStream)
{
string seg = sr.ReadLine();
tx.Text = sr.ReadLine();
tx.Refresh();
}
使用StreamReader
似乎要快得多。是否有更快的方法從CSV文件導入數據?
不要試圖解析它yoruself,只是使用CSV解析器,這樣你就不需要自己解析字符串,並處理所有奇怪的問題(例如引用轉義),也可以只是專注於使用數據。是的,無論何時處理任何文件,除非有令人信服的理由,否則您應該傳輸數據。 – Servy
快速通常不是您需要擔心的CSV。正確的是。你可能會認爲你所需要做的就是用逗號分開,但這會讓你陷入一個受傷的世界。谷歌一些[CSV解析器](http://stackoverflow.com/questions/906841/csv-parser-reader-for-c) – paqogomez
此外,什麼是'tx',爲什麼它有意義刷新它在一個循環內? –