Écrire dans un fichier texte est souvent utile pour sauvegarder des données utilisateur ou des informations sur le comportement de votre application dans un fichier fichier .log (appelé aussi fichier journal).
La classe QFile offre de nombreuses possibilités de manipulations sur les fichiers.
Pour utiliser la classe "QFile", il faut l'inclure dans le fichier en-tête :
#include <QFile>
Et ajouter dans le fichier .pro :
QT += core
L'écriture se fait en trois phases :
Exemple de code :
QString fichier = "c:/users/sn/Documents/monFichier.txt";
QFile file(fichier); // Appel du constructeur de la classe QFile
if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
// Si l'ouverture du fichier en écriture à réussie
// écrire dans le fichier
file.write("Texte à écrire dans le fichier ou variable contenant ce texte\n");
// Fermer le fichier
file.close();
}
Autre exemple de code utilisant les flux :
Il peut-être intéressant d'utiliser l'opérateur << pour ainsi exploiter toute la puissance des flux pour écrire dans le fichier.
QString fichier = "c:/users/sn/Documents/monFichier.txt";
QFile file(fichier); // Appel du constructeur de la classe QFile
if (file.open(QIODevice::WriteOnly | QIODevice::Text)) {
// Si l'ouverture du fichier en écriture à réussie
// écrire dans le fichier en utilisant un flux :
QTextStream out(&file);
out << "La valeur approchée de pi est : " << 3.14 << "\n";
// Fermer le fichier
file.close();
}
Classe QFile - Documentation officielle de Qt