原始二进制转 Base64 文本转换器

将原始二进制字节流转换为 Base64 文本,确保数据在仅支持文本的通信协议中安全传输而不会损坏。

选择或拖放文件

选择或将文件拖放到此处

100% 浏览器端私密转换 - 文件绝不会离开您的设备

或粘贴 Ctrl+V
零网络传输隐私保证: 上传至外部服务器的数据为 0 字节。所有处理均在您的浏览器沙箱中本地完成。

格式比较与技术规格

规格BINBASE64
MIME 类型application/octet-streamtext/plain
类型raw binary byte streamradix-64 ASCII encoding
压缩nonenone (33% size expansion over raw binary)
标准规范Raw Binary Byte Stream SpecificationIETF RFC 4648
魔数文件头 (Magic Bytes)Raw arbitrary binary bytesA-Z a-z 0-9 + / = (Base64 character set)

格式概述与应用

原始二进制文件包含计算机的原始数据,例如可执行程序、编译后的代码或原始磁盘映像。这些字节流使用单个字节的所有 256 种可能值。许多通信系统(如使用 SMTP 的电子邮件服务)或基于文本的标记语言(如 XML 和 JSON)只能安全地处理人类可读的文本。如果尝试通过这些文本通道发送原始 BIN 文件,控制字符可能会被剥离或修改,从而彻底破坏数据。 将 BIN 转换为 Base64 文本通过将原始字节转换为一组安全的 64 个 ASCII 字符来解决此问题。这些字符包括大写字母、小写字母、数字和两个符号。Web 开发人员使用此方法将小图像、字体或图标直接嵌入到 HTML、CSS 或 JavaScript 文件中,从而减少浏览器加载网页所需的独立 HTTP 请求数量。

技术规格与编解码器解析

原始二进制文件的 MIME 类型为 application/octet-stream,表示没有压缩且没有特定容器结构的原始二进制字节流。它缺少标准的魔数(magic byte)头部,这意味着内部字节完全取决于创建该文件的特定应用程序。Base64 文本使用 text/plain MIME 类型,并采用 radix-64 ASCII 编码方案。转换过程将每三个 8 位二进制字节拆分为四个 6 位值。每个 6 位值映射到 Base64 字母表中的特定字符。由于这种分组数学运算,将 BIN 转换为 Base64 会导致严格的 33% 的大小膨胀。这两种格式均不使用底层压缩,因此在转换过程中底层数据保持完全无损。

操作系统与浏览器兼容性

Base64 文本在所有现代操作系统、网页浏览器和文本编辑器中均具有通用兼容性。由于它完全由标准 ASCII 字符构建,因此 Windows、macOS、Linux、iOS 和 Android 无需专用驱动程序或解码器软件即可读取和解析它。网页浏览器原生支持数据 URI 中的 Base64 字符串以用于图像和样式表。Unix 和 Linux 系统上的 base64 等命令行工具可以即时编码和解码这些文件。JavaScript、Python、C# 和 Java 等编程语言包含用于原生处理 Base64 编码的内置函数。

💡 实用信息

在规划存储和带宽时,请记住 33% 的体积增长。由于 Base64 文本比原始二进制占用更多磁盘空间,因此仅在严格需要仅文本传输时才使用此编码。

格式比较与技术规格

当转换为 Base64 文本时,10 MB 的原始二进制文件会扩展到大约 13.3 MB。在运行速度为每秒 30 兆位的标准 4G 移动网络上,传输原始二进制文件大约需要 2.7 秒,而较大的 Base64 文件大约需要 3.5 秒。在运行速度为每秒 200 兆位的 5G 网络上,二进制文件的传输时间降至 0.4 秒,Base64 降至 0.5 秒。在运行速度为每秒 1 千兆位的高速光纤连接上,两个文件的传输时间均不到 0.1 秒。

常见问题

如何将原始二进制文件转换为 Base64 文本而不损失质量?

从原始二进制到 Base64 文本的转换是完全无损的。由于这两种格式都不使用有损压缩,因此在映射到 ASCII 字符的过程中,原始字节流的每一位都被准确地保留了。

原始二进制和 Base64 文本有什么区别?

原始二进制是未格式化的 8 位字节流,包含从 0 到 255 的任何可能值。Base64 文本是 ASCII 编码的表示形式,将数据值限制为 64 个可打印字符的安全子集,从而导致数据大小增加 33%。