ToolConvoyToolConvoyv2.6
CODE

Base64 解码 — 在浏览器中将 Base64 解码为文本

将 Base64 字符串解码回纯文本。自动识别 UTF-8、Latin-1 等编码,全程在浏览器中完成。无上传、无限制。

● 本地运行 · 在内存中编码页面加载以来工具发出的网络请求:0 次

Base64 是「用文本承载二进制」的通用语言:它把任意一段字节序列变成由 A-Z、a-z、0-9、+/= 构成的可打印 ASCII 字符串。任何需要把二进制塞进纯文本通道的场景都会用到它 —— 邮件附件(MIME)、JSON Web Token(JWT)、CSS 里的 data URL、需要嵌入密钥或证书的配置文件。把它解码回原始字节在任何编程语言里都只是一行代码;这类工具存在的意义在于,那「一行代码」的周围有无穷无尽的边界情况,能让答案出错。

解码中「不那么显然」的一点是,这些边界情况全部和字符编码有关,跟 Base64 编码本身无关。Base64 编码本身不含歧义 —— 每个字符严格对应 6 个比特 —— 但另一端的那些字节最初属于某种字符编码(UTF-8、Latin-1、Windows-1252、Shift-JIS、GB2312),而 Base64 字符串又不携带任何关于用的是哪一种的信息。解码 Base64 给你一串字节;把这串字节变成文本需要选对字符编码,选错就会产生乱码 —— 也就是把 UTF-8 字节按 Latin-1 解读时出现的 é、’ 之类的著名乱码字符。本工具的自动检测先试 UTF-8,因为它能命中 95% 的现代负载,剩下的再回落到 Latin-1。

最后做个交接:如果解码结果是文本,并且想嵌入到另一个文档中,直接复制即可。如果解码结果是二进制(图片、PDF、音频文件),图片切换到 Base64 转图片工具,其他格式把原始字节保存为对应扩展名的文件即可。如果你正在调试一个 JWT 或 SAML 断言,JWT 解码器会直接显示结构化负载,无需手动再走一遍 Base64 那一步。

广告

使用方法

  1. 粘贴 Base64 字符串

    把编码后的负载放入输入区。工具会自动剥离空白和 `data:...;base64,` 前缀,所以无论粘贴一段干净的字符串,还是完整 data URL,都能直接解码。

  2. 选择输出编码

    默认是 UTF-8,覆盖绝大多数解码负载。如果原始内容来自老式网页、邮件主题行,或 2010 年以前的数据库导出,请切换为 Latin-1。

  3. 复制或下载结果

    把解码后的文本复制到剪贴板,或下载为 .txt 文件。整个转换都在内存里完成、完全不接触服务器,所以多 MB 的 Base64 也能轻松处理。

常见问题

Base64 中带有 data URL 前缀怎么办?

解码器会在解码前剥离 `data:text/plain;base64,`(及类似前缀)。粘贴完整的数据 URL 或原始负载都行 —— 两种输入产生相同的输出,无需手动清理。

自动编码检测是怎么实现的?

解码器先按 UTF-8 验证(这覆盖最常见的情况),如果字节不是合法的 UTF-8 就回落到 Latin-1。识别出的编码会显示在输出旁边,方便你在它猜错时手动覆盖。

为什么解码后是乱码?

乱码(本应显示 é 却变成 é)意味着原始内容是 UTF-8,但被按 Latin-1 处理了,反之亦然。在下拉框中切换输出编码再试一次即可。

能解码 Base64URL(RFC 4648 §5)吗?

可以 —— Base64URL 把 `+` 替换为 `-`,把 `/` 替换为 `_`,并去掉 padding 填充符。解码器会自动识别两种变体,并在解析前补回缺失的填充。

有大小限制吗?

没有硬性限制。转换在你的浏览器标签页中完成,实际上限取决于可用内存 —— 50 MB 的 Base64 字符串解码出约 37 MB 的文本,处理期间峰值内存大约是输出体积的 4 倍。

限制说明

  • 无法干净地解码二进制文件二进制负载(图片、PDF、音频)解码得到的是字节序列,不是文本。图片类负载请使用 Base64 转图片工具,其他二进制格式将解码后的字节保存为匹配扩展名的文件即可。
  • 不支持超大输入的流式处理整个 Base64 字符串在解码期间都会驻留在内存中。几百 MB 的输入可能会耗尽浏览器标签页的资源。遇到非常大的负载,macOS/Linux 上的 `base64 -d` 这类 CLI 工具更快。
  • 不能还原原始编码如果被编码的文本原本是 CP1252、Shift-JIS 或其他遗留编码,解码器只能基于合法性来猜测。对于非 UTF-8 / 非 Latin-1 的来源,请在编码下拉框中显式指定。

平台说明

macOS
macOS 自带终端命令 `base64 -D` 作为 CLI 替代方案。当你不想打开终端,或需要 CLI 没有的自动编码检测能力时,这个浏览器工具是合适的选择。
Windows
PowerShell 的 `[System.Convert]::FromBase64String()` 是 CLI 等价方案。这个浏览器工具适合一次性解码,以及解码来自 Web UI(而不是来自文件)的负载。
Linux
GNU coreutils 自带 `base64 -d`。浏览器工具适合从聊天窗口、邮件或文档页复制而来的内容 —— 这种场景你通常不愿再敲进终端。
Web
完全在客户端运行。页面加载完成后可以离线使用。在受限环境中无法打开终端、不能安装软件的情况下,做临时解码很方便。
广告

相关工具

广告