Je programme en C++. Dans mon code, je crée un fichier texte, écrit des données dans le fichier et lit le fichier à l'aide de stream. Une fois la séquence terminée, je souhaite effacer toutes les données contenues dans le fichier txt. Quelqu'un peut-il me dire la commande pour effacer les données dans le fichier txt. Merci
Si vous ouvrez simplement le fichier en écriture avec l'option truncate, vous supprimerez le contenu.
std::ofstream ofs;
ofs.open("test.txt", std::ofstream::out | std::ofstream::trunc);
ofs.close();
La suppression du fichier supprimera également le contenu. Voir supprimer le fichier .
Si vous activez le drapeau 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
}
J'ai testé cela pour mes propres besoins dans une situation de programmation commune que j'avais. Assurez-vous de préformer le ".close ();" opération. Si vous ne le faites pas, vous ne saurez pas si vous tronquez ou appliquez simplement le début du fichier. Selon le type de fichier, vous pouvez simplement ajouter sur le fichier ce qui, en fonction de vos besoins, risque de ne pas remplir sa fonction. Assurez-vous d'appeler ".close ();" explicite sur le courant que vous essayez de remplacer.