私は1行ずつ読む必要がある1 GBのテキストファイルを持っています。これを行う最善の方法と最速の方法は何ですか? FormatData()
で.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);
}
}
}
}
私は単語と一致し、そのインクリメント整数変数に基づいていなければならない行の先頭ワードをチェックします。
void FormatData(string line)
{
if (line.StartWith(word))
{
globalIntVariable++;
}
}
を所有していた会社のために働きますか単純化されたバージョン)。 –
@Matthew:FormatData()を無視するだけで、実際にはプロセス全体が遅いので、トラブルシューティングのためコメントしています。 –
高速なソリューションが必要な場合は、FormatDataを無視することはできません。データを読み込むスレッドとは別のスレッドでデータをフォーマットするのが最適です。 – cspolton