ホームページ > バックエンド開発 > C++ > C#.netで行ごとにテキストファイルを効率的に読み取るにはどうすればよいですか?

C#.netで行ごとにテキストファイルを効率的に読み取るにはどうすればよいですか?

Barbara Streisand
リリース: 2025-01-29 08:30:13
オリジナル
1086 人が閲覧しました

How Can I Efficiently Read a Text File Line by Line in C# .NET?

テキストファイルを効率的に読み取ります:処理

質問:

C#.NETで高効率でテキストファイルを読み取る方法は?

回答:

特定のニーズによれば、ファイルの読み取りを最適化する方法はたくさんあります。 StreamReader.Readline:

を使用します

バッファーの128バイトと比較して、StreamReaderを使用して適切なバッファサイズ(デフォルト1024以上)を設定すると、パフォーマンスが大幅に向上する可能性があります。

file.readlinesを使用:

これは、行処理の最適化の代替方法であり、同時にすべての行を占めるメモリを回避します。
using (var fileStream = File.OpenRead(fileName))
using (var streamReader = new StreamReader(fileStream, Encoding.UTF8, true, 1024)) {
    string line;
    while ((line = streamReader.ReadLine()) != null)
    {
        // 处理每一行
    }
}
ログイン後にコピー

file.readalllinesを使用:

文字列[]が返されますが、この方法は上記の方法よりもメモリに対する需要が高くなります。ただし、ランダムアクセスを可能にします。

var lines = File.ReadLines(fileName);
foreach (var line in lines)
    // 处理每一行
ログイン後にコピー

string.splitを使用:

このメソッドは、通常、ファイルのコンテンツ全体を各行を含む配列に分割します。

var lines = File.ReadAllLines(fileName);
for (var i = 0; i < lines.Length; i++)
    // 处理每一行
ログイン後にコピー
ベンチマークテストは、特定のファイルサイズと処理要件に応じて最適な方法を決定するために不可欠です。高効率処理の場合、file.readlinesを使用することを一般的にお勧めします。

以上がC#.netで行ごとにテキストファイルを効率的に読み取るにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート