HCC2DF 容器格式

HCC2DF 是 API 默认使用的二进制容器格式(传入 structured: false 可跳过)。它会为原始负载附加文件名,并在合适时使用 zlib 压缩。

← 返回 API 文档

二进制布局

所有多字节字段均采用大端序。该容器是无填充的平面字节序列。

偏移大小(字节)字段说明
06magicASCII 字符串 HCC2DF。始终存在,供解码器识别格式。
61version格式版本。目前始终为 0x01。
71compression压缩标志。0x00 = 未压缩,0x01 = zlib-deflate 压缩。
81nameLen后续 UTF-8 文件名的字节长度。有效范围:1–127。
9nameLennameUTF-8 编码的文件名,不允许路径分隔符和空字节。
9 + nameLen剩余部分content负载字节。如果 compression == 0x01,请使用 inflate / zlib.decompress 解压。

压缩规则

编码器会尝试对每个负载使用 zlib 压缩。只有当压缩后的结果小于原始大小的 90% 时,才会采用压缩形式。

文件名限制

这些是格式级约束。API 会在把不合规的 inputName 交给编码器前先进行规范化处理。

示例 — 十六进制转储

以下示例展示了将 ASCII 字符串 Hello 以 note.txt 保存、且未压缩时的容器内容:

48 43 43 32 44 46   — magic "HCC2DF"
01                  — version 1
00                  — uncompressed
08                  — filename length: 8 bytes
6e 6f 74 65 2e 74 78 74  — "note.txt"
48 65 6c 6c 6f      — content: "Hello"

另请参阅

API 文档 — 了解如何通过 REST API 生成条码。

代码示例 — JavaScript、Python、Java、PHP 的示例代码。

← 返回 HCC2D 编码器