IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Discussion :

Ouvrir un fichier QFile et écrire à la fin

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2018
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2018
    Messages : 136
    Par défaut Ouvrir un fichier QFile et écrire à la fin
    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

  2. #2
    Membre confirmé
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2018
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2018
    Messages : 136
    Par défaut
    Je vais apporter un début de réponse, j'ai donc fait la chose suivante :
    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(...);
    }
    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.
    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 :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    if ( file.seek(size-1) == true )
    Mais même résultat

  3. #3
    Membre chevronné

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2015
    Messages
    294
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Yvelines (Île de France)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels

    Informations forums :
    Inscription : Mars 2015
    Messages : 294
    Par défaut
    bonjour pour ecrire à la fin d'un fichier il faut rajouter le flag QIODevice::Append (en plus de Text et WriteOnly)

  4. #4
    Membre confirmé
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2018
    Messages
    136
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Val d'Oise (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : Industrie

    Informations forums :
    Inscription : Septembre 2018
    Messages : 136
    Par défaut
    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 )
    {
       ...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [PERL] Comment écrire à la fin d'un fichier ?
    Par barichon21 dans le forum Langage
    Réponses: 4
    Dernier message: 27/11/2009, 08h21
  2. fonction pour écrire à la fin d'un fichier
    Par schlo dans le forum Débuter
    Réponses: 1
    Dernier message: 11/10/2009, 19h54
  3. Ouvrir un fichier .txt, et écrire dedans
    Par klakman dans le forum x86 32-bits / 64-bits
    Réponses: 17
    Dernier message: 29/07/2009, 17h54
  4. fwrite : Comment écrire à la fin d'un fichier?
    Par philipina dans le forum Débuter
    Réponses: 5
    Dernier message: 19/08/2008, 16h10
  5. [Excel] Ouvrir un fichier xls existant et écrire dans les cellules
    Par xianxian620 dans le forum Bibliothèques et frameworks
    Réponses: 3
    Dernier message: 30/05/2008, 09h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo