Bonjour,
comment convertir un QIODevice en un QString?
Merci
Bonjour,
comment convertir un QIODevice en un QString?
Merci
Si tu nous expliquais plutôt où tu veux en venir?
As tu lu la doc Qt concernant QIODevice? Si oui, as tu compris son rôle? Si oui, pourquoi voudrais tu faire une telle chose?
Un clavier Azerty en vaut deux.
Bonjour,
En fait j'ai pas compris le rôle de QIODevice.
pour l'utilisation: j'ai récupéré des données dans un QIODevice et je veut les affichés
Merci
Comment les as tu récupéré? Quel type de QIODevice? Tu peux nous montrer ton code?
QIODevice te permet de lire/écrire dans différents supports comme QFile, QTcpSocket, ect...
Un clavier Azerty en vaut deux.
QIODevice est une couche d'abstraction pour tous les périphériques, pour faire simple : cela permet que tous aient au moins des fonctionnalités minimales, des fonctions aux noms identiques...
QIODevice fournit la méthode readAll() pour récupérer le contenu dans un QByteArray.
Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.
Créer des applications graphiques en Python avec PyQt5
Créer des applications avec Qt 5.
Pas de question d'ordre technique par MP !
Et je voudrais rajouter, qu'une QString peut se construire à partir d'un QByteArray.
( Ou vous pouvez aussi utiliser la fonction data() pour récupéré un char* ( mais ça va surement affiché un peu de tout et n'importe quoi :p )
Vous souhaitez participer à la rubrique 2D/3D/Jeux ? Contactez-moi
Ma page sur DVP
Mon Portfolio
Qui connaît l'erreur, connaît la solution.
On peut toujours passer par la version hexa des QByteArray
Ce qui rend le QString enregistrable dans un fichier texte, et lisible
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2 byteArray.toHex().data()
Bonjour,
merci pour tous.
j'ai un autre problème, en créant un objet de type QIODevice j'ai l'erreur suivante:
quelqu'un peut m'expliquer !
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 error: cannot allocate an object of type 'QIODevice' error: because the following virtual functions are abstract: c:/Qt/4.5.0/include/QtCore/../../src/corelib/io/qiodevice.h:154: error: virtual qint64 QIODevice::readData(char*, qint64) c:/Qt/4.5.0/include/QtCore/../../src/corelib/io/qiodevice.h:156: error: virtual qint64 QIODevice::writeData(const char*, qint64)
QIODevice n'est pas prévue pour être utilisée directement, c'est une classe virtuelle. C'est une interface, elle doit être implémentée avant d'être utilisée. (En fait, seules deux fonctions ne sont pas implémentées, la lecture et l'écriture : pour que ça fonctionne, il faut que cela soit implémenté !).
Tu dois donc instancier un fils de QIODevice, selon ce que tu veux faire.
Vous souhaitez participer aux rubriques Qt (tutoriels, FAQ, traductions) ou HPC ? Contactez-moi par MP.
Créer des applications graphiques en Python avec PyQt5
Créer des applications avec Qt 5.
Pas de question d'ordre technique par MP !
Si tu n'a pas besoin de gérer ton contenu avec un fichier, et que c'est en local, utilise QBuffer
Vous avez un bloqueur de publicités installé.
Le Club Developpez.com n'affiche que des publicités IT, discrètes et non intrusives.
Afin que nous puissions continuer à vous fournir gratuitement du contenu de qualité, merci de nous soutenir en désactivant votre bloqueur de publicités sur Developpez.com.
Partager