이 페이지에서

QBinaryJson Namespace

QJsonDocument 를 JSON 바이너리 형식으로 변환하거나 그 반대로 변환하는 함수가 포함되어 있습니다. 더 보기...

헤더: #include <QBinaryJson>
CMake: find_package(Qt6 REQUIRED COMPONENTS Core5Compat)
target_link_libraries(mytarget PRIVATE Qt6::Core5Compat)
qmake: QT += core5compat

형

enum DataValidation { Validate, BypassValidation }

함수

QJsonDocument fromBinaryData(const QByteArray &data, QBinaryJson::DataValidation validation = Validate)
QJsonDocument fromRawData(const char *data, int size, QBinaryJson::DataValidation validation = Validate)
QByteArray toBinaryData(const QJsonDocument &document)

상세 설명

이 네임스페이스는 JSON 직렬화에 JSON 바이너리 형식을 사용하는 구형 코드와의 호환성을 유지하기 위한 유틸리티 함수를 제공합니다. Qt JSON 유형은 Qt CBOR 유형으로 변환할 수 있으며, 이 CBOR 유형은 다시 CBOR 바이너리 형식으로 직렬화될 수 있고, 그 반대의 변환도 가능합니다.

유형 문서

enum QBinaryJson::DataValidation

이 열거형은 fromBinaryData() 또는 fromRawData()을 사용하여 QJsonDocument 로 변환할 때, QJsonDocument 가 바이너리 데이터를 유효성 검사할지 여부를 지정하는 데 사용됩니다.

상수값상수값
QBinaryJson::Validate0데이터를 사용하기 전에 유효성을 검사합니다. 이것이 기본값입니다.
QBinaryJson::BypassValidation1데이터 유효성 검사를 건너뜁니다. 신뢰할 수 있는 출처에서 데이터를 수신했고 데이터가 유효한 것을 확실히 알고 있는 경우에만 사용하십시오. 유효하지 않은 데이터를 사용하면 애플리케이션이 중단될 수 있습니다.

함수 설명서

QJsonDocument QBinaryJson::fromBinaryData(const QByteArray &data, QBinaryJson::DataValidation validation = Validate)

data 를 기반으로 QJsonDocument 를 생성합니다.

validation 데이터를 사용하기 전에 유효성 검사를 수행할지 여부를 결정합니다. 기본적으로 데이터의 유효성이 검증됩니다. data 가 유효하지 않은 경우, 이 메서드는 null 문서를 반환합니다.

참고: 바이너리 JSON인코딩은 하위 호환성을 위해 유지될 뿐입니다. 이 기능은 문서화되어 있지 않으며, 인코딩할 수 있는 JSON 문서의 최대 크기에 제한이 있습니다. Qt JSON 유형은 Qt CBOR 유형으로 변환될 수 있으며, 이는 다시 CBOR 바이너리 형식으로 직렬화될 수 있고 그 반대의 경우도 가능합니다. CBOR 형식은 JSON의 상위 집합을 나타내는 명확하게 정의되어 있고 제약이 적은 바이너리 표현 방식입니다.

toBinaryData(), fromRawData(), DataValidation 및 QCborValue도 참조하십시오 .

QJsonDocument QBinaryJson::fromRawData(const char *data, int size, QBinaryJson::DataValidation validation = Validate)

data 의 첫 size 바이트를 사용하는 QJsonDocument 를 생성합니다. 이 함수는 data 에 이진 인코딩된 JSON 문서가 포함되어 있다고 가정합니다. 생성된 문서는 data 에 대한 소유권을 가져가지 않습니다. 데이터는 별도의 데이터 구조로 복사되며, 원본 데이터는 이후 삭제되거나 수정될 수 있습니다.

data 4바이트 경계에 맞춰져야 합니다.

validation 데이터를 사용하기 전에 유효성 검사를 수행할지 여부를 결정합니다. 기본적으로 데이터의 유효성이 검증됩니다. data 가 유효하지 않은 경우, 이 메서드는 null 문서를 반환합니다.

데이터를 나타내는 QJsonDocument 를 반환합니다.

참고: 바이너리 JSON인코딩은 하위 호환성을 위해만 유지됩니다. 이 기능은 문서화되어 있지 않으며, 인코딩할 수 있는 JSON 문서의 최대 크기에 제한이 있습니다. Qt JSON 유형은 Qt CBOR 유형으로 변환될 수 있으며, 이는 다시 CBOR 바이너리 형식으로 직렬화될 수 있고 그 반대의 경우도 가능합니다. CBOR 형식은 JSON의 상위 집합을 위한 명확하게 정의되고 제약이 적은 바이너리 표현 방식입니다.

참고: Qt 5.15이전에는 QJsonDocument, QJsonObject 또는 QJsonArray 중 어느 하나라도 해당 데이터를 참조하고 있는 한, 호출 측에서 data 가 삭제되거나 수정되지 않도록 보장해야 했습니다. Qt 5.15부터는 더 이상 이 조치가 필요하지 않습니다.

toRawData(), fromBinaryData(), DataValidation 및 QCborValue도 참조하십시오 .

QByteArray QBinaryJson::toBinaryData(const QJsonDocument &document)

document 의 이진 표현을 반환합니다.

이 바이너리 표현은 Qt 내부에서 사용되는 기본 형식이기도 하며, 이 형식으로 변환하거나 다시 되돌리는 과정이 매우 효율적이고 빠릅니다.

이 바이너리 형식은 디스크에 저장하거나 다른 애플리케이션이나 컴퓨터와 교환할 수 있습니다. ` fromBinaryData()`를 사용하여 이를 다시 JSON 문서로 변환할 수 있습니다.

참고: 바이너리 JSON인코딩은 하위 호환성을 위해만 유지됩니다. 이 기능은 문서화되어 있지 않으며, 인코딩할 수 있는 JSON 문서의 최대 크기에 제한이 있습니다. Qt JSON 유형은 Qt CBOR 유형으로 변환할 수 있으며, 이 유형은 다시 CBOR 바이너리 형식으로 직렬화될 수 있고 그 반대의 경우도 가능합니다. CBOR 형식은 JSON의 상위 집합을 위한 명확하게 정의되고 제약이 덜한 바이너리 표현 방식입니다.

fromBinaryData() 및 QCborValue도 참조하십시오 .

© 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.