ホームページ > バックエンド開発 > C++ > C# で CSV ファイルにデータを書き込むときに上書きを防ぐ方法は?

C# で CSV ファイルにデータを書き込むときに上書きを防ぐ方法は?

Barbara Streisand
リリース: 2025-01-23 03:16:07
オリジナル
168 人が閲覧しました

How to Prevent Overwriting When Writing Data to a CSV File in C#?

C# での CSV ファイルの書き込み: 上書きの問題の解決

C# で CSV ファイルを作成する場合、最後の行しか書き込まれないというよくある問題があります。これは、ループを繰り返すたびにファイル内の既存のコンテンツが上書きされるためです。

この問題を解決するには、CSV ファイルを上書きするのではなく、各行を CSV ファイルに追加する必要があります。これを行うには、StringBuilder オブジェクトを作成し、ループ内でそれに新しい行を追加します。ループが完了すると、StringBuilder の内容全体が CSV ファイルに書き込まれます。

以下は修正された関数の例です:

<code class="language-csharp">var csv = new StringBuilder();
string first = reader[0].ToString();
string second = image.ToString();
csv.AppendLine(string.Format("{0},{1}", first, second));
File.WriteAllText(filePath, csv.ToString());</code>
ログイン後にコピー

代わりに、File.AppendAllText メソッドを使用することもできます:

<code class="language-csharp">string newLine = string.Format("{0},{1}", first, second);
File.AppendAllText(filePath, newLine);</code>
ログイン後にコピー

これにより、既存のファイルの内容が上書きされることなく、新しい行が追加されます。

CSV ファイルを記述するもう 1 つの方法は、CsvHelper ライブラリを使用することです。このライブラリは、型変換、文字列エスケープ、および CSV ファイルに関連するその他の複雑さを処理することにより、このプロセスを簡素化します。

以上がC# で CSV ファイルにデータを書き込むときに上書きを防ぐ方法は?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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