我有一個1 GB的文本文件,我需要逐行閱讀。什麼是最好和最快的方式來做到這一點?如何在.NET中讀取大(1 GB)的txt文件?
private void ReadTxtFile()
{
string filePath = string.Empty;
filePath = openFileDialog1.FileName;
if (string.IsNullOrEmpty(filePath))
{
using (StreamReader sr = new StreamReader(filePath))
{
String line;
while ((line = sr.ReadLine()) != null)
{
FormatData(line);
}
}
}
}
在FormatData()
我檢查線的起始字必須以一個字相匹配,並基於該增量的整數變量。
void FormatData(string line)
{
if (line.StartWith(word))
{
globalIntVariable++;
}
}
您可能要張貼`FormatData`公司工作(或以防萬一。 – 2010-11-25 05:19:10
@Matthew:只是忽略FormatData(),實際上整個過程很慢,所以對於我已經評論過的故障排除。 – 2010-11-25 05:22:58
如果你想要一個快速的解決方案,你不能忽略`FormatData`,你最好在與讀取數據的單獨線程中格式化數據。 – cspolton 2010-11-25 07:09:36