En esta página

Soporte CBOR en Qt

Qt proporciona soporte para tratar con datos CBOR. CBOR es un formato binario para almacenar datos que tiene un superconjunto de los tipos disponibles en JSON, pero es más compacto.

El soporte CBOR en Qt proporciona una API C++ fácil de usar para analizar, modificar y guardar datos CBOR.

Encontrará más información sobre el formato de datos CBOR en la RFC 7049.

Visión general

CBOR es un formato para almacenar datos estructurados. Tiene tres grupos de tipos incorporados:

  • Tipos básicos: enteros, coma flotante, booleanos, nulos, etc.
  • Tipos similares a cadenas: cadenas y matrices de bytes
  • Contenedores: matrices y mapas

Además, CBOR puede añadir una "etiqueta" para ampliar el significado del tipo. Los tipos contenedores pueden contener tipos básicos, tipos tipo cadena y contenedores.

Las clases CBOR

La clase QCborValue

La clase QCborValue representa cualquier tipo CBOR. También dispone de una API sencilla para leer y escribir en los objetos QCborStreamReader y QCborStreamWriter, así como para manipular dichos objetos en memoria, con la ayuda de QCborArray y QCborMap. La API CborValue está simplificada a partir del tipo de datos CBOR completo y siempre representa todos los enteros como qint64 y todos los puntos flotantes como double. Esto significa que QCborValue es incapaz de representar valores enteros CBOR fuera del rango de qint64 (-2^63 a 2^63-1). Al crear un flujo CBOR, QCborValue::toCbor() puede configurarse para que intente escribir las representaciones de punto flotante de precisión simple y media más cortas.

La clase QCborArray

La clase QCborArray se utiliza para contener una matriz de objetos QCborValue. Un objeto QCborValue puede contener un objeto QCborArray. Tiene funciones para convertir a y desde QVariantList, QStringList, QJsonArray.

La clase QCborMap

La clase QCborMap se utiliza para contener un mapa de objetos QCborValue. Un objeto QCborValue puede contener un objeto QCborMap. Tiene funciones para convertir a y desde QVariantMap, QVariantHash, y QJsonObject, pero puede tener claves de cualquier tipo, no sólo QString.

La clase QCborStreamReader

La clase QCborStreamReader es una API de bajo nivel para leer datos CBOR de un QIODevice, un QByteArray, o un puntero a memoria. Tiene una API similar a la clase QXmlStreamReader.

La clase QCborStreamWriter

La clase QCborStreamWriter es una API de bajo nivel para escribir datos CBOR en QIODevice o QByteArray. Su API es similar a la de la clase QXmlStreamWriter.

Ver también Parsing and displaying CBOR data, Serialization Converter, y Saving and Loading a Game.

QCborArray

Se utiliza para contener un array de elementos CBOR

QCborArray::ConstIterator

La clase QCborArray::ConstIterator proporciona un iterador const de estilo STL para QCborArray

QCborArray::Iterator

La clase QCborArray::Iterator proporciona un iterador no-const de estilo STL para QCborArray

QCborMap

Se utiliza para contener un contenedor asociativo representable en CBOR

QCborMap::ConstIterator

La clase QCborMap::ConstIterator proporciona un iterador const de estilo STL para QCborMap

QCborMap::Iterator

La clase QCborMap::Iterator proporciona un iterador no-const de estilo STL para QCborMap

QCborParserError

Utilizado por QCborValue para informar de un error de análisis sintáctico

QCborStreamReader

Decodificador CBOR simple, operando sobre un QByteArray o QIODevice

QCborStreamWriter

Codificador CBOR simple que funciona con un flujo unidireccional

QCborValue

Encapsula un valor 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.