ホームページ > バックエンド開発 > C++ > C#で行ごとにテキストファイルを読み取る最も効率的な方法は何ですか?

C#で行ごとにテキストファイルを読み取る最も効率的な方法は何ですか?

Linda Hamilton
リリース: 2025-01-29 08:25:10
オリジナル
358 人が閲覧しました

What's the Most Efficient Way to Read a Text File Line by Line in C#?

c#テキストファイルを効率的に読み取ります

C#でテキストファイルを処理する場合、効率的に読み取ることが重要です。一般的に使用される方法は、を使用して行ごとにファイルを解析することです。ただし、パフォーマンスを改善するためには、検討する価値のある他のテクノロジーがいくつかあります。

StreamReader.ReadLine()デフォルトのバッファサイズは1024バイトです。この値を増やすと、特に大規模なファイルのパフォーマンスが大幅に向上する可能性があります。次のコード設定バッファサイズを使用することを検討してください:

この方法では、

よりも効率的な代替品が提供されます。メモリの消費を最小限に抑えるためにオンデマンドでロードされています:

StreamReader

using (var fileStream = File.OpenRead(fileName)) using (var streamReader = new StreamReader(fileStream, Encoding.UTF8, true, 128)) { string line; while ((line = streamReader.ReadLine()) != null) { // 处理每一行 } }このメソッドはすべての行のすべての配列を返しますが、

と比較して、メモリ効率は低くなります。ランダムに行にアクセスする必要がある場合、この方法は適用されます:

特に大規模な文書の場合、部門ラインの最も効率性の使用。ファイル全体をメモリにロードし、すべての行に配列を割り当てる必要があります。 StreamReader.ReadLine() 推奨方法:
<code class="language-csharp">var lines = File.ReadLines(fileName);
foreach (var line in lines)
    // 处理每一行</code>
ログイン後にコピー

最高のパフォーマンスを得るために、速度とメモリ効率のバランスがあるため、を使用することをお勧めします。特定のファイル共有オプションが必要な場合は、バッファのサイズで

を使用することを検討できます。

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

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