二进制编码/解码器
免费的在线二进制编解码器,无需安装。可将文本转换为二进制格式(0/1)。
关于二进制编码/解码
在文本与 8 位二进制字符串之间相互转换。编码会将每个字符映射到其字符码并填充至 8 位,字节之间以空格连接。解码会去除空白字符,按空格拆分,将每一组按基 2 解析,并渲染对应的 ASCII 字符。如果输入包含除 0、1 和空白字符以外的任何字符,解码将被拒绝。
使用方法
1. 切换“编码”或“解码”模式标签。\n2. 在编码模式下输入纯文本;在解码模式下输入以空格分隔的二进制组,例如 01001000 01101001。\n3. 点击“编码/解码”按钮。\n4. 使用“复制”按钮复制结果。如果输入中包含除 0、1 或空白字符以外的任何内容,解码模式会显示错误。
字节编码细节
编码使用 charCodeAt(0).toString(2) 并填充至 8 位,因此无论码位如何,每个字符都恰好生成 8 位 —— U+00FF 以上的字符仅使用低字节,会丢失信息。解码会在任意连续空白字符(空格、制表符、换行符)处拆分输入,将每个标记视为二进制数,并调用 String.fromCharCode。解析为 NaN 的标记会被丢弃。预期使用场景为纯 ASCII 文本。
▶为什么输出的二进制组之间有空格?
每个字符都被编码为一个独立的 8 位组,并以空格连接。这样可以让字节在视觉上保持分隔,同时解码时也需要在空白字符处拆分以恢复各个字节。
▶能处理 Unicode 或 emoji 吗?
只能部分处理。编码会取每个字符代码的低 8 位,因此任何 U+00FF 以上的字符都会被截断,无法往返还原为原始字符。如需完整的 Unicode 支持,请改用 Unicode Escape 或 Base64 工具。
▶为什么我的输入解码失败?
解码会根据模式 ^[01\s]+$ 校验输入。任何非 0、1 或空白字符(例如字母、数字 2 或逗号分隔符)都会在任何转换开始之前触发“invalid binary”错误。
▶每个二进制组必须恰好是 8 位吗?
不必。解码只是将每个以空白字符分隔的标记按基 2 解析,因此更短或更长的标记(例如 101 或 00000010)都会被接受。无法构成有效数字的标记会被静默跳过。
如果这个工具对你有帮助的话,请考虑请我喝杯咖啡。
请给我买杯咖啡吧。