工具
ZH

十六进制转字符串(Hex 转 ASCII)

粘贴十六进制字节,即可将其读取为文本。解码器会自动忽略空格、换行、0x 和 \x 前缀、冒号及逗号,并能准确指出无效字符所在的位置。

隐私保护:您的数据仅在浏览器中处理,绝不会被上传。

如何将十六进制转换为文本

  1. 粘贴十六进制字符串,例如 48 65 6C 6C 6F、0x48,0x65 或 \x48\x65。各种分隔符可以混用。
  2. 解码后的文本会立即显示。如果出现乱码,请换一种编码:UTF-8、ASCII/Latin-1 或 UTF-16。
  3. 复制文本或将其下载为文件。点击交换按钮,可将文本转换回十六进制。

十六进制转 ASCII 的解码原理

每两位十六进制数字是一个字节,取值从 00 到 FF。在 ASCII 和 UTF-8 中,20–7E 的字节都是可打印字符,所以 48 65 6C 6C 6F 依次读作 H、e、l、l、o,即“Hello”。ASCII 以外的字符在 UTF-8 中占用多个字节,例如汉字“中”是 E4 B8 AD 三个字节。

十六进制字符
0A换行符(LF)
0D回车符(CR)
20空格
21 / 2C / 2E! / , / .
30–39数字 0–9
41–5A大写字母 A–Z
61–7A小写字母 a–z
C3 A9UTF-8 中的 é
E2 82 ACUTF-8 中的 €

如何选择正确的编码

如果看到 � 符号,说明有些字节在所选编码中无效,或者这段十六进制根本不是文本,而是图片、哈希值或压缩数据等二进制数据。

用代码实现十六进制转字符串

常见问题

十六进制转文本和十六进制转 ASCII 有什么区别?

ASCII 只包含 128 个字符(字节 00–7F):英文字母、数字和标点符号。十六进制转文本还涵盖中文等其他语言的字符和 emoji,它们在 UTF-8 中占 2–4 个字节。对于纯英文文本,两者的结果相同。

为什么会提示“字节不完整”?

每个字节必须恰好由两位十六进制数字组成。数字个数为奇数,通常意味着缺少了前导零(应写 0A 而不是 A),或者复制时漏掉了某个字符。错误提示会指出问题所在的位置。

可以解码带 0x 或 \x 前缀的十六进制吗?

可以。0x、\x 和 % 等前缀,以及空格、换行、逗号、冒号和短横线都会被自动去除,因此 C 语言数组、Python 字节串和十六进制转储都可以直接粘贴。

我的数据会被上传吗?

不会。十六进制数据由浏览器中的 JavaScript 解码,始终不会离开你的设备。