Support CBOR dans Qt
Qt permet de traiter les données CBOR. CBOR est un format binaire pour stocker des données qui possède un sur-ensemble des types disponibles dans JSON, mais qui est plus compact.
Le support CBOR dans Qt fournit une API C++ facile à utiliser pour analyser, modifier et sauvegarder les données CBOR.
Plus de détails sur le format de données CBOR peuvent être trouvés dans la RFC 7049.
Vue d'ensemble
CBOR est un format permettant de stocker des données structurées. Il comporte trois groupes de types intégrés :
- Types de base : entiers, virgule flottante, booléen, null, etc.
- Types de type chaîne : chaînes de caractères et tableaux d'octets
- Conteneurs : tableaux et cartes
En outre, CBOR peut ajouter une "étiquette" pour étendre la signification du type. Les types de conteneurs peuvent contenir des types de base, des types de type chaîne et des conteneurs.
Les classes CBOR
La classe QCborValue
La classe QCborValue représente n'importe quel type CBOR. Elle possède également une API simple pour lire et écrire dans les objets QCborStreamReader et QCborStreamWriter, ainsi que pour manipuler ces objets en mémoire, avec l'aide de QCborArray et QCborMap. L'API CborValue est simplifiée par rapport au type de données CBOR complet et représente toujours tous les nombres entiers comme qint64 et tous les nombres à virgule flottante comme double. Cela signifie que QCborValue est incapable de représenter les valeurs entières CBOR en dehors de la plage de qint64 (-2^63 à 2^63-1). Lors de la création d'un flux CBOR, QCborValue::toCbor() peut être configuré pour tenter d'écrire les représentations les plus courtes en virgule flottante simple et demi-précision.
La classe QCborArray
La classe QCborArray est utilisée pour contenir un tableau d'objets QCborValue. Un objet QCborValue peut contenir un objet QCborArray. Elle possède des fonctions de conversion vers et depuis QVariantList, QStringList, QJsonArray.
La classe QCborMap
La classe QCborMap est utilisée pour contenir une carte d'objets QCborValue. Un objet QCborValue peut contenir un objet QCborMap. Elle possède des fonctions pour convertir vers et depuis QVariantMap, QVariantHash, et QJsonObject, mais elle peut avoir des clés de n'importe quel type, pas seulement QString.
La classe QCborStreamReader
La classe QCborStreamReader est une API de bas niveau pour lire les données CBOR à partir d'un QIODevice, d'un QByteArray ou d'un pointeur vers la mémoire. Son API est similaire à celle de la classe QXmlStreamReader.
La classe QCborStreamWriter
La classe QCborStreamWriter est une API de bas niveau permettant d'écrire des données CBOR sur un site QIODevice ou QByteArray. Son API est similaire à celle de la classe QXmlStreamWriter.
Voir aussi Parsing and displaying CBOR data, Serialization Converter, et Saving and Loading a Game.
Utilisé pour contenir un tableau d'éléments CBOR | |
La classe QCborArray::ConstIterator fournit un itérateur constant de style STL pour QCborArray | |
La classe QCborArray::Iterator fournit un itérateur non-const de style STL pour QCborArray. | |
Utilisé pour contenir un conteneur associatif représentable en CBOR | |
QCborMap::ConstIterator classe qui fournit un itérateur const de style STL pour QCborMap | |
La classe QCborMap::Iterator fournit un itérateur non-const de style STL pour QCborMap | |
Utilisé par QCborValue pour signaler une erreur d'analyse. | |
Décodeur de flux CBOR simple, opérant sur un QByteArray ou un QIODevice | |
Encodeur CBOR simple fonctionnant sur un flux unidirectionnel | |
Encapsule une valeur en CBOR |
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.