切换深色模式
编码与校验
从 首页 → 工具箱 → 编码与校验 进入。本工具做本地转换和校验,不需要连接终端。
本段视频演示 CRC 算法与 HEX 输入选择、执行计算,以及 Modbus RTU 的低字节在前顺序。Base64 转换可按下方图文操作。
先决定转换的对象
| 任务 | 选择 | 输入 |
|---|---|---|
| 文本转 Base64 | Base64 / 编码 | 原文文本 |
| Base64 还原文本 | Base64 / 解码 | Base64 字符串 |
| 字符与 HEX 表示转换 | HEX 对应方向 | 文本或字节 HEX |
| URL 转义/还原 | URL 对应方向 | 文本或转义结果 |
| CRC / XOR | 对应校验算法 | 明确选择 UTF-8 或 HEX |
Base64、Base32 和 HEX/文本的编码/解码以 UTF-8 文本 为对象。它们不是任意二进制文件或无线帧的 Base64↔HEX 转换器:字节不是有效 UTF-8 时,解码可能报错;不要先解码成文本再编码成 HEX 来转换无线帧,应从平台导出原始字节 HEX。
编码不是加密。Base64 文本里仍可包含原始敏感内容,不能因为变成另一串字符就公开分享。
例一:Base64 编码和反向还原
- 选择 Base64,方向为编码。
- 输入
hello。 - 点击 执行,输出应为
aGVsbG8=。 到这里编码已完成,可按需复制结果。反向检查(可选): 点击 交换并反向转换,或选择解码并将结果粘贴到输入,再点击 执行,确认输出还原为hello。

复制时取结果框内容,避免夹带标签、日志前缀或额外空格。解码失败先核对是否复制完整,是否混入引号和时间戳。
例二:CRC-16/Modbus
计算读一个保持寄存器请求的 CRC:
- 选择 CRC-16/Modbus。
- 输入格式选 HEX。
- 输入
01 03 00 00 00 01。 - 执行,得到
0x0A84。 - Modbus RTU 在线路上按低字节在前附加,因此结尾是
84 0A。

完整示例请求:01 03 00 00 00 01 84 0A。不要把字符 0x0A84 原样作为文本字符发送,也不要重复追加两次 CRC。
HEX 与 UTF-8 为什么结果不同
输入框相同内容 01 03 | 参与计算的内容 |
|---|---|
| HEX | 两个字节 01、03 |
| UTF-8 | 字符 0、1、空格、0、3 |
先明确协议要求处理原始字节还是文本。CRC 不一致时,先检查输入格式和字节范围,再检查算法,而非只交换输出字节碰运气。
怎样选择校验算法
工具提供 CRC-8、CRC-16/Modbus、CRC-16/CCITT-FALSE、CRC-32/ISO-HDLC、XOR 等选项。名称相近的 CRC 参数可能不同,必须与协议指定算法一致。
确认参与校验的起止字节:帧头、长度、数据、原有校验是否计入,由目标协议决定。通常重新计算时不要把旧 CRC 一起算入,但最终以协议定义为准。
校验是单向计算,不存在把 CRC “解码回原报文”的操作。需要完整 Modbus 帧时,用Modbus 生成工具更便于核对结构。
常见问题
| 现象 | 检查 |
|---|---|
| HEX 无法解析 | 字符是否仅含有效 HEX,字节是否完整,是否夹带日志 |
| Base64 解码失败 | 方向是否选对,内容是否完整且未被截断 |
| 校验与协议示例不同 | 算法、输入格式、参与范围、输出字节顺序 |
| 反向转换不出现 | 校验算法不支持可逆转换;查看当前选择 |
| 输出正确但设备不响应 | 生成/计算不证明目标通信正确,继续核对地址和发送格式 |