跳到正文

文本转二进制与十六进制

Text to Binary / Hex

按选定的编码,在文本与二进制、八进制、十进制、十六进制之间互转。

把文本转成二进制、八进制、十进制或十六进制——也能转回来——编码是一个选项而不是一个默认假设。"한的二进制"有四个正确答案:UTF-8 是 ED 95 9C,UTF-16 是 D5 5C,CP949 是 B0 A1,码点是 D55C。可选编码是 UTF-8、UTF-16、CP949 和码点,没有 GBK。

🔒 完全在你的浏览器里运行binaryhexencodeconvert

方向

转换

到处都是默认值。韩文一个音节三个字节。

进制

文本

数字

字节数

9

输入字符数

5

每字符字节数

1.8

「한 的二进制」有四个正确答案:UTF-8 是 ED 95 9C,UTF-16 是 D5 5C,CP949 是 B0 A1,当成码位则是 D55C。默不作声地替你挑一个,正是文字变成乱码的路径,所以编码在这里是个可调的选项,而不是一个假设。之所以带上 CP949,是因为韩国的老系统还在说它,而浏览器没法直接产出它——编码器是把浏览器自己的解码器反过来搭出来的。

怎么用

  1. 先选编码

    没有理由就用 UTF-8。CP949 放在这里是因为韩国的旧系统还在用它;当问题关乎 Unicode 而不是存储时,你要的是码点。

  2. 选进制和格式

    分隔符、补零、十六进制大写、0x 或 0b 前缀。这些决定输出能不能干净地粘进你要放的地方。

  3. 反方向就粘贴数字

    任何分隔符都行——空格、逗号、换行、0x 前缀。完全没有分隔符的一串,二进制每 8 位、十六进制每 2 位切开。

常见问题

"一个字符的二进制"指的是哪种编码?

看谁在问。磁盘上的文件是某种编码的字节——通常是 UTF-8。JavaScript 字符串是 UTF-16。Unicode 资料说的是码点。悄悄选定一种,就是文本变成乱码的途径,所以这里要问。

一个汉字或韩文为什么是三个字节?

在 UTF-8 里,韩文音节和常用汉字都落在三字节区间。在 CP949 里韩文是两个。这个差异,就是一个名字在一个系统的数据库列里放得下、在另一个系统里溢出的原因。

有些字符输出成了问号

你选的编码没有它们的码——CP949 没有 emoji,也没有它自己字符集之外的拉丁字母。面板会列出是哪些字符,UTF-8 能表示它们中的每一个。

浏览器里的 CP949 是从哪来的?

浏览器能解码它却不能编码它,所以这里的编码器是把浏览器自己的解码器反过来建的——每个码都往返一次来建表。所以结果和一个 CP949 文件里实际的内容完全一致。

可以从这些接进来

接下来

这些工具吃得下当前工具的产出,结果可以直接送过去。