Hex ↔ ASCII Converter

One input per line. Output is numbered to match the input order.
Pinned tools are listed in your favourites on the home page.Copies a link to this tool that carries your current input, so it opens ready to run.Gives you an iframe snippet for putting this tool on your own site.
Ctrl+Enter Run  · Ctrl+Shift+C Copy  · Esc Clear

Understand Hex ↔ ASCII Converter

这个转换器以十六进制显示一段文本背后的原始字节,也能把一串十六进制字节还原成可读文本。

How it works

文本先按 UTF-8 编码,然后每个字节打印为两位十六进制:H 是 48,e 是 65。单位是字节而不是字符,因此 ASCII 之外的内容会占用不止一对——é 是 C3 A9,🌍 是 F0 9F 8C 8D——这正是区分单字节编码问题与多字节编码问题的办法。反向转换时,输入按空格或逗号切分,每一段解析为一个字节,因此超过 FF 的值会被拒绝。

When to use it

  • 确认一个字符串到底是不是 UTF-8,还是经历过一次 Latin-1 往返。
  • 读取从抓包、串口日志或 hex dump 里复制出来的十六进制字节。
  • 追查让解析器出错的不可见字符——字节序标记(EF BB BF)或不换行空格(C2 A0)。
  • 手写字节级的测试夹具。

Watch out for

  • 分隔符是可选的,歧义则不是。48 65 6C、48,65,6C 以及连续的 48656C 都能解码,0x 前缀也会被去掉——但位数为奇数的连续串会被拒绝而不是猜测,因为在开头或结尾补零会得到不同的结果。
  • 字节数不等于字符数。十个 emoji 是 40 字节,这就是为什么按字符计长的列和按字节计长的列,会对同一个值放不放得下产生分歧。
  • 解码假定这些字节是文本。从二进制文件里取来的十六进制解出来是替换字符,而不是一个文件。

Frequently Asked Questions

如何把十六进制转换成 ASCII?

把十六进制字节(例如 48 65 6C 6C 6F)粘进输入框。每两位十六进制对应一个 ASCII 字符:0x48 = 72 = H,0x65 = 101 = e。工具会自动识别空格分隔、逗号分隔、0x 前缀和无分隔的连续格式,并输出 UTF-8 文本。

支持哪些分隔符?

解码时接受四种输入格式:空格分隔(48 65 6C)、逗号分隔(48,65,6C)、0x 前缀(0x48 0x65 0x6C),以及无分隔的连续形式(48656C)。格式会被自动识别。编码时由你选择输出字节之间的分隔符,默认是一个空格。

十六进制编码和 hex dump 是一回事吗?

hex dump 展示二进制数据的原始十六进制字节,通常还带偏移量和 ASCII 边栏。本工具更简单:它把文本字符串的 UTF-8 字节转成十六进制,也能转回来——适合排查字符串编码问题。

How to Use Hex ↔ ASCII Converter

  1. Paste or type your input in the input area above.
  2. The tool processes your input automatically or click Run.
  3. Copy or download the result using the action buttons.
  4. Use Ctrl+Enter to run quickly from the keyboard.