Bonjour à tous,
je voudrais écrire à la fin d'un fichier texte (fichier déclaré en QFile), le problème est que je ne sais pas comment positionner mon curseur à la fin du fichier.
Quelqu'un saurait-il me conseiller ?
Merci d'avance
Bonjour à tous,
je voudrais écrire à la fin d'un fichier texte (fichier déclaré en QFile), le problème est que je ne sais pas comment positionner mon curseur à la fin du fichier.
Quelqu'un saurait-il me conseiller ?
Merci d'avance
Je vais apporter un début de réponse, j'ai donc fait la chose suivante :
donc maintenant je lis bien le nombre de données, et je vois que mon fichier grossi au fur et à mesure. Mais lorsque je l'ouvre, je n'ai que du "NULL" comme données.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 qint64 size; size = file.size(); if ( file.open(QIODevice::WriteOnly | QFile::Text) == false ) { // Error to open file, nothing to do, go out return; } if ( file.seek(size) == true ) { file.write(...); }
Et je sais que le write fonctionne parce que lorsque je retire le "seek", certes je n'ai qu'une ligne mais je lis bien du texte.
Pour info j'ai essayé aussi ça, en me disant que peut être le pointeur commence en 0 et pas 1 :
Mais même résultat
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 if ( file.seek(size-1) == true )
bonjour pour ecrire à la fin d'un fichier il faut rajouter le flag QIODevice::Append (en plus de Text et WriteOnly)
C'est tout à fait ça Stéphane, merci beaucoup, il fallait que j'écrive
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if ( fileRawData.open(QIODevice::WriteOnly | QFile::Text | QIODevice::Append) == false ) { ...
Partager