2011-07-16 19 views
1

プログラムでCSVファイルを作成していますが、これに5列書きます。後で、CSVファイルに1列追加したいと思います。それ、どうやったら出来るの?既存のCSVファイルに新しい列を書き込む

よろしく Sanchaita

+0

新しい列をすべての行に追加しますか?今すぐファイルを書くために使用するコードを表示できますか?これを簡単に行う方法はありますが、コードをどのように構造化するかによって異なります。 –

+0

objTextWriter.WriteLine( "ユーザー名、メールボックスパス、日付時刻、メール、連絡先、予定、エラー"); –

+0

objTextWriter.WriteLine(objCountTableRow.Cells [0] .Value.ToString()+ "、" + objCountTableRow.Cells [1] .Value.ToString() + "、" + DateTime.Now.ToString() –

答えて

5

最も簡単な(と私は知っているから、のみ)これを行う方法は、CSVファイルの内容を読み込むプログラムで列を追加し、ファイルを書き換えています。

ファイルの途中で新しいコンテンツを追加しようとすると(ファイルを置き換えるのではなく)、ファイルをディスクに書き直す必要があるため、その方法を自分で使用するときのパフォーマンスについて心配する必要はありません。そして、私が知る限り、これはどんなAPI呼び出しでもサポートされていません。

関連のないメモでは、すべての変更が含まれているテンポラリファイルを最初に作成し、すべてがうまくいけば元のファイルのみを置き換えることをお勧めします。しかし、それは良いプログラミングの実践です。

+0

しかし、これはディスクIOの増加につながります。 –

+0

ファイルの途中にコンテンツを追加できるAPI関数があってもとにかくそのファイルの新しいバージョンをディスクに書き直す必要があります。ファイルはディスクに順番に書き込まれ、コンテンツを追加すると、そのコンテンツは下に移動する必要があります。同じパフォーマンスオーバーヘッドを使用します。 –

+0

追加している列は最後の列になります –

関連する問題