ファイルの途中にテキストを書き込めません。 テキストを追加する場所を正しく見つけることができ、tellg()/tellp()
で確認できます。fstream:ファイルの途中に書き込めません
myfstream << "new text" << endl;
これは、ファイルの最後に追加された:しかしとき、seekp()
後、私は新しいテキストを追加します。
私は何をしていますか?
ファイルの途中にテキストを書き込めません。 テキストを追加する場所を正しく見つけることができ、tellg()/tellp()
で確認できます。fstream:ファイルの途中に書き込めません
myfstream << "new text" << endl;
これは、ファイルの最後に追加された:しかしとき、seekp()
後、私は新しいテキストを追加します。
私は何をしていますか?
をhereを報告したように、私は追加モードでファイルを開いてから、その後、すべての書き込み操作は()でもseekp後に、追加します。
解決方法は、ファイルをios :: in |で開くことです。 ios :: outモード。
申し訳ありません申し訳ありませんが、fstreamを使用してファイルの途中に書き込む方法はありません。 ホールファイルをプログラムにコピーし、テキストを編集してファイルに書き戻す必要があります。
そうしないとのstd :: ostreamにしてラインを上書きすることができ:: seekp()
ファイルの途中に挿入することはできません。上書きのみできます。テキストが追加されるのは奇妙ですが、コードを投稿しない限り、それがどうして起こるのかは分かりません。 – molbdnilo
@molbdnilo:挿入したくない、特定のポイントから上書きするだけです。 – Pietro