<QtCborCommon>
<QtCborCommon> 헤더에는 스트리밍 클래스(QCborStreamReader 및 QCborStreamWriter)와 QCborValue 에 공통으로 적용되는 정의가 포함되어 있습니다. 더 보기...
Header: | #include <QtCborCommon> |
Types
enum class | QCborKnownTags { DateTimeString, UnixTime_t, PositiveBignum, NegativeBignum, Decimal, …, Signature } |
enum class | QCborSimpleType { False, True, Null, Undefined } |
enum class | QCborTag { } |
QCborError도 참조하십시오 .
유형 문서
enum class QCborKnownTags
이 열거형에는 Qt 구현 시점에 알려진 CBOR 태그의 목록이 포함되어 있습니다. 이 목록은 완전한 것이 아니며 RFC에 의해 뒷받침되거나 Qt 구현에서 특별히 사용되는 태그만 포함합니다.
권위 있는 목록은 CBOR 태그 레지스트리에서 IANA에 의해 유지 관리됩니다.
Constant | 값 | 설명 |
---|---|---|
QCborKnownTags::DateTimeString | 0 | RFC 3339에 따라 형식이 지정된 날짜 및 시간 문자열로, RFC 4287에 의해 세분화되었습니다. Qt::ISODate 및 Qt::ISODateWithMs 과 동일한 형식입니다. |
QCborKnownTags::UnixTime_t | 1 | 1970-01-01T00:00Z 이후 경과한 초를 숫자로 표현합니다. |
QCborKnownTags::PositiveBignum | 2 | 네트워크 바이트 순서로 바이트 배열로 인코딩된 임의의 길이의 양수입니다. 예를 들어 숫자264는 바이트 값 0x01과 8개의 0바이트를 포함하는 바이트 배열로 표시됩니다. |
QCborKnownTags::NegativeBignum | 3 | 임의의 길이의 음수로, 해당 숫자의 절대값에서 1을 뺀 값으로 인코딩됩니다. 예를 들어, 바이트 값 0x02와 0바이트 8개를 포함하는 바이트 배열은 숫자 -265 - 1을 나타냅니다. |
QCborKnownTags::Decimal | 4 | 두 정수의 배열로 인코딩된 십진수 분수: 첫 번째는 10의 거듭제곱 지수, 두 번째는 적분 맨티사입니다. 값 273.15는 [-2, 27315] 배열로 인코딩됩니다. |
QCborKnownTags::Bigfloat | 5 | 십진수와 비슷하지만 지수는 대신 2의 거듭제곱입니다. |
QCborKnownTags::COSE_Encrypt0 | 16 | RFC 8152 (CBOR 객체 서명 및 암호화)에 지정된 Encrypt0 맵. |
QCborKnownTags::COSE_Mac0 | 17 | RFC 8152 (CBOR 객체 서명 및 암호화)에 지정된 Mac0 맵입니다. |
QCborKnownTags::COSE_Sign1 | 18 | RFC 8152 (CBOR 객체 서명 및 암호화)에 지정된 Sign1 맵. |
QCborKnownTags::ExpectedBase64url | 21 | 스트림이 JSON으로 변환되는 경우 바이트 배열이 Base64url을 사용하여 인코딩되어야 함을 나타냅니다. |
QCborKnownTags::ExpectedBase64 | 22 | 스트림이 JSON으로 변환되는 경우 바이트 배열을 Base64를 사용하여 인코딩해야 함을 나타냅니다. |
QCborKnownTags::ExpectedBase16 | 23 | 스트림이 JSON으로 변환되는 경우 바이트 배열을 Base16(16진수)을 사용하여 인코딩해야 함을 나타냅니다. |
QCborKnownTags::EncodedCbor | 24 | 바이트 배열에 CBOR 스트림이 포함되어 있음을 나타냅니다. |
QCborKnownTags::Url | 32 | 문자열에 URL이 포함되어 있음을 나타냅니다. |
QCborKnownTags::Base64url | 33 | 문자열에 Base64url을 사용하여 인코딩된 데이터가 포함되어 있음을 나타냅니다. |
QCborKnownTags::Base64 | 34 | 문자열에 Base64를 사용하여 인코딩된 데이터가 포함되어 있음을 나타냅니다. |
QCborKnownTags::RegularExpression | 35 | 문자열에 Perl 호환 정규식 패턴이 포함되어 있음을 나타냅니다. |
QCborKnownTags::MimeMessage | 36 | 문자열에 MIME 메시지가 포함되어 있음을 나타냅니다( RFC 2045에 따름). |
QCborKnownTags::Uuid | 37 | 바이트 배열에 UUID가 포함되어 있음을 나타냅니다. |
QCborKnownTags::COSE_Encrypt | 96 | RFC 8152 (CBOR 객체 서명 및 암호화)에 지정된 Encrypt 맵입니다. |
QCborKnownTags::COSE_Mac | 97 | RFC 8152 (CBOR 객체 서명 및 암호화)에 지정된 Mac 맵입니다. |
QCborKnownTags::COSE_Sign | 98 | RFC 8152 (CBOR 객체 서명 및 암호화)에 명시된 Sign 맵. |
QCborKnownTags::Signature | 55799 | 해석은 변경되지 않으며, 이 태그는 파일 헤더로 CBOR 스트림에서 가장 바깥쪽 태그로 사용할 수 있습니다. |
다음 태그는 디코딩 중에 QCborValue 에서 해석하여 확장된 Qt 유형을 가진 객체를 생성하며, 동일한 확장 유형을 인코딩할 때 해당 태그를 사용합니다.
Constant | 값 | 설명 |
---|---|---|
QCborKnownTags::DateTimeString | 0 | QDateTime |
QCborKnownTags::UnixTime_t | 1 | QDateTime (디코딩할 때만) |
QCborKnownTags::Url | 32 | QUrl |
QCborKnownTags::Uuid | 37 | QUuid |
또한 QByteArray 을 포함하는 QCborValue 에 ExpectedBase64url
, ExpectedBase64
또는 ExpectedBase16
중 하나를 사용하여 태그가 지정된 경우 QCborValue 는 JSON으로 변환할 때 예상 인코딩을 사용합니다( QCborValue::toJsonValue 참조 ).
QCborTag, QCborStreamWriter::append(QCborTag), QCborStreamReader::isTag(), QCborStreamReader::toTag(), QCborValue::isTag() 및 QCborValue::tag()도 참조하세요 .
enum class QCborSimpleType
이 열거형에는 CBOR에 사용할 수 있는 "단순 유형"이 포함되어 있습니다. 단순 유형 범위는 0에서 255까지이며 더 이상의 값을 포함하지 않는 유형입니다.
현재 알려진 값은 다음과 같습니다:
Constant | 값 | 설명 |
---|---|---|
QCborSimpleType::False | 20 | "false" 부울입니다. |
QCborSimpleType::True | 21 | "true" 부울입니다. |
QCborSimpleType::Null | 22 | 값이 없음(null). |
QCborSimpleType::Undefined | 23 | 값이 없거나 삭제된 경우, 일반적으로 오류입니다. |
Qt CBOR API는 위의 값이든 다른 값이든 모든 단순 타입의 인코딩과 디코딩을 지원합니다.
애플리케이션은 해당 사양이 게시된 경우에만 추가 값을 사용해야 하며, 그렇지 않으면 원격에서 해석 및 유효성 검사가 실패할 수 있습니다. 값 24~31은 예약되어 있으므로 사용해서는 안 됩니다.
현재 권한 있는 목록은 IANA에서 단순 값 레지스트리에 유지 관리합니다.
QCborStreamWriter::append(QCborSimpleType), QCborStreamReader::isSimpleType(), QCborStreamReader::toSimpleType(), QCborValue::isSimpleType() 및 QCborValue::toSimpleType()도 참조하세요 .
enum class QCborTag
이 열거형은 열거형을 포함하지 않으며 CBOR 태그에 대한 유형 안전 액세스를 제공하는 데만 사용됩니다.
CBOR 태그는 추가적인 의미적 의미를 제공하기 위해 일반 CBOR 유형에 첨부되는 64비트 숫자입니다. QCborTag는 QCborKnownTags 에 있는 열거형에서 만들거나 숫자 표현을 직접 제공하여 만들 수 있습니다.
예를 들어 다음은 태그 2로 태그된 바이트 배열을 포함하는 QCborValue 을 만듭니다.
QCborValue(QCborTag(2), QByteArray("\x01\0\0\0\0\0\0\0\0", 9));
QCborKnownTags, QCborStreamWriter::append(QCborTag), QCborStreamReader::isTag(), QCborStreamReader::toTag(), QCborValue::isTag() 및 QCborValue::tag()도 참조하세요 .
© 2025 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.