01
免费二进制与文本转换器
将文本转为二进制(0 和 1)或反向转换。支持 UTF-8 编码。查看任意文本的字节数和位数。
加载后可离线使用
格式:
字节分隔方式:
二进制输出
01001000 01100101 01101100 01101100 01101111
5 字符5 字节40 位
常见用途
- 学习计算机科学的二进制理解计算机如何将文本存储为二进制 — 准确查看字母如何映射到8位ASCII字节。
- 二进制代码谜题和密码在二进制中编码秘密消息,用于密室逃脱、谜题和破码游戏。
- 网络中的二进制表示查看文本数据如何在网络层以二进制表示 — 对协议分析很有用。
- 二进制文本隐写术将文本消息隐藏在二进制数据流中 — 隐写编码概念的介绍。
- 理解二进制数据传输查看文本如何编码为二进制字节以在串行线、蓝牙和无线电上传输。
工作原理
转换完全在你的浏览器中运行,使用 Web API 内置的 TextEncoder 和 TextDecoder——即所有现代浏览器使用的同一 UTF-8 编码引擎。不导入任何库;分块、进制转换和字节解析都是在本地运行的手写 JavaScript。
- 1TextEncoder 编码你的文本将文本转换为字节时,浏览器的 TextEncoder.encode() 会将每个字符——包括表情符号和非 ASCII 文字——映射为其 UTF-8 字节序列。这与浏览器内部发送表单数据时使用的代码路径相同。
- 2手写分块器格式化字节每个字节值都会转换为所选进制(二进制用 toString(2),十六进制用 toString(16),八进制用 toString(8),或十进制),并补齐到固定宽度。分组选项控制字节之间用空格、换行、半字节间隔(4 位一组)分隔,还是不分隔。
- 3解析器为反向转换重建字节从编码形式转换回文本时,手写解析器去除分隔符,将输入拆分为固定宽度的块(二进制 8 个字符、十六进制 2 个、八进制 3 个),十进制则按空白分隔的记号拆分。每个块都用 parseInt() 按正确进制解析,校验是否在 0–255 范围内,然后放入 Uint8Array。
- 4TextDecoder 校验并输出 UTF-8Uint8Array 会传给 TextDecoder('utf-8', { fatal: true }),如果字节序列不是有效的 UTF-8 就会抛出错误——可捕获二进制输入构成无效多字节序列等情况。输出下方会显示字符数、字节数和位数。