0

テキストファイルを出力するプログラムに取り組んでいます。ファイルに書き込みたいときはいつでも、ファイルを開き、seekp()ファイルの最後まで書き込み、閉じます。ただし、新しい書き込みが実行されるたびに、以前にファイルに存在していたすべてのデータが置き換えられているようです。

output.open("output.txt", fstream::out);
output.seekp(0, ios::end);
output << "Record " << key << " does not exist.\r";
output.close();

これは、すべての書き込みをファイルの最後に追加する適切な方法ですか? ファイル全体が書き直される原因となっている可能性のあるアイデアをいただければ幸いです。

4

2 に答える 2

3

fstream::appフラグを追加します。

output.open("output.txt", fstream::out | fstream::app);
于 2013-03-28T01:45:24.763 に答える
1

fstream::out常にファイル内のデータを上書きします。追加するには、モジュールを使用しますfstream::app

于 2013-03-28T01:47:48.063 に答える