web-dev-qa-db-ja.com

C ++のテキストファイル内のデータをクリアする

私はC++でプログラミングしています。私のコードでは、テキストファイルを作成し、ファイルにデータを書き込み、ストリームを使用してファイルから読み取ります。シーケンスを完了した後、txtファイル内のすべてのデータをクリアしたいと思います。 txtファイルのデータを消去するコマンドを誰かに教えてもらえますか。ありがとうございました

31
Zeyad

Truncate-optionを使用して書き込み用にファイルを単に開くと、コンテンツが削除されます。

std::ofstream ofs;
ofs.open("test.txt", std::ofstream::out | std::ofstream::trunc);
ofs.close();

http://www.cplusplus.com/reference/fstream/ofstream/open/

51
PureW

ファイルを削除すると、コンテンツも削除されます。 ファイルの削除 を参照してください。

4
Thomas Matthews

Truncフラグを設定した場合。

#include<fstream>

using namespace std;

fstream ofs;

int main(){
ofs.open("test.txt", ios::out | ios::trunc);
ofs<<"Your content here";
ofs.close(); //Using Microsoft incremental linker version 14
}

よくあるプログラミングの状況で、私自身のニーズに合わせてこれをテストしました。 「.close();」を必ず実行してください操作。あなたがこれをしないと、あなたが切り捨てるか、ファイルの懇願にただアプリをするかどうかはわかりません。ファイルの種類によっては、ファイルに追加するだけで、必要に応じてその目的を果たすことができない場合があります。必ず「.close();」を呼び出してください置き換えようとしているfstreamに明示的に。

2
1911 Soldier