Bonjour,
Un petit problème se pose à moi, c'est quelque chose de tout à fait trivial, mais je n'arriver pas à trouver la source du dysfonctionnement.
L'idée est de lire l'objet QTime sérialisé dans le fichier. Si le fichier est vide (ce qui est le cas au début), l'objet time est initialisé à 0. Ensuite, je rouvre le fichier avec le flag truncate pour écraser son contenu par la nouvelle valeur de time. Le dernier morceau sert à relire le fichier pour voir le résultat de l'opération.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 if(m_countFile.open(QIODevice::ReadOnly)) { QDataStream stream(&m_countFile); QTime time; stream >> time; m_countFile.close(); if(m_countFile.open(QIODevice::WriteOnly | QIODevice::Truncate)) { stream.setDevice(&m_countFile); stream << time.addSecs(60); m_countFile.close(); if(m_countFile.open(QIODevice::ReadOnly)) { stream.setDevice(&m_countFile); stream >> time; m_countFile.close(); } } }
L'exécution se déroule sans encombres, passant par chaque étape, mais le fichier reste désespérément vide.
Partager