Base64 转文本
将 Base64 字符串还原为可读的 UTF-8 文本——100% 在浏览器中运行。
输入
输出
什么是 Base64 转文本?
Base64 转文本是一种将 Base64 字符串还原为原始纯文本的工具。Base64 是一种使用 64 个可打印 ASCII 字符表示二进制数据的编码方案,解码则反转此过程:每四个 Base64 字符被还原为原始数据的三个字节。然后本工具将这些字节解释为 UTF-8 文本,因此解码结果可以包含英文、中文、日文、表情符号以及任何其他已编码的 Unicode 字符。
直接使用 JavaScript 内置的 atob() 函数只能处理 Latin-1 字符,并会使任何多字节文本乱码。本工具先将 Base64 字符串解码为字节,再将这些字节解码为 UTF-8,从而正确还原中文字符、日文假名和汉字、表情符号及其他多字节字符。如果 Base64 字符串格式不正确,工具会报告明确的错误,而不是静默地产生乱码。
Base64 解码的工作原理
Base64 解码将每四个输入字符转换回三个字节。首先使用 Base64 字母表(A–Z、a–z、0–9、"+"、"/")将每个字符映射为 6 位值,然后将四个 6 位值连接成 24 位,再拆分为三个 8 位字节。如果输入包含"="填充,则末尾对应的字节会被丢弃,使输出长度与原始输入匹配。
字节恢复后,它们被解释为 UTF-8 字符序列。UTF-8 是一种可变长度编码:ASCII 字符占 1 个字节,拉丁字符占 2 个字节,常见的中日文字符占 3 个字节,较少见的字符和表情符号占 4 个字节。解码器通过读取这些字节序列重建原始文本,这就是为什么正确的 UTF-8 感知解码器对非英文内容至关重要。
何时使用 Base64 转文本
每当您遇到 Base64 字符串并想读取或重用其内容时,就需要解码 Base64。常见情况包括:
- 检查 JWT 令牌。JSON Web Token 的头部和载荷使用 Base64URL 编码;解码它们可显示诸如签发者、主题和过期时间等 JSON 声明。
- 读取 HTTP 基本认证头。
Authorization头包含 Base64 编码的"用户名:密码"对,您可能想检查它以进行调试。 - 调试 Data URI。
data:URL 中的内联 Base64 内容可以解码以验证实际嵌入的内容。 - 解码邮件附件(MIME)。邮件中的二进制附件使用 Base64 编码;解码可重建原始文件字节。
- 从配置或日志中恢复文本。某些系统在环境变量、机密或日志文件中将文本值存储为 Base64 以便安全传输。
- 验证编码内容。快速检查您生成的 Base64 字符串是否确实解码回预期文本,尤其是在复制或传输之后。
每当您需要将 Base64 字符串转回可读文本时,本工具可即时完成,并正确处理 UTF-8 内容。
如何将 Base64 解码为文本
使用本工具解码 Base64 只需一秒钟,并且完全在浏览器中完成。无需上传、无需注册、无需安装。请按以下三步操作:
- 粘贴 Base64 字符串。点击左侧的输入框,粘贴要解码的 Base64 字符串。允许包含空白字符和换行。
- 点击"解码"。解码后的文本会出现在右侧的输出框中,并显示一个小提示,标明输入和输出的长度。如果字符串无效,会显示明确的错误。
- 复制或下载。点击"复制"将解码后的文本复制到剪贴板,或点击"下载 .txt"将其保存为文本文件。点击"清空"重新开始。
由于解码使用 JavaScript 在您自己的设备上本地计算,Base64 字符串永远不会离开您的浏览器。这使本工具适合处理机密令牌、凭据片段或敏感配置值。
使用 Base64 解码的技巧
如果解码失败,最常见的原因是字符串格式不正确。请检查是否缺少或多了"="填充、字符串内是否有杂散空白,或是否存在 Base64 字母表之外的字符。请注意,URL 有时会将"+"替换为空格;如果您从 URL 查询字符串中复制了 Base64 值,可能需要先将空格还原为"+"再解码。
请注意 Base64URL 变体,它将"+"替换为"-",将"/"替换为"_",通常会去掉"="填充。它用于 JWT 和 URL 安全场景。要使用标准解码器解码 Base64URL 字符串,请将"-"还原为"+","_"还原为"/",并添加"="填充直到长度为 4 的倍数。最后,请记住 Base64 不是加密——任何人都可以解码,因此切勿将其视为保护机密的方式。
这个 Base64 转文本工具免费吗?
是的,完全免费,无需注册、无水印,除设备内存外没有任何限制。
能正确解码中文、日文和表情符号吗?
可以。工具先将 Base64 字节解码,再将其解释为 UTF-8,因此中文字符、日文假名和汉字、表情符号以及任何其他已编码的 Unicode 字符都能正确还原。
为什么我的字符串解码失败?
最常见的原因是缺少"="填充、包含 Base64 字母表之外的字符,或使用了以"-"和"_"代替"+"和"/"的 Base64URL 字符串。请清理字符串或将 Base64URL 字符还原为标准字母表后再试。
我的 Base64 字符串会被上传吗?
不会。所有解码都在本地进行。您的字符串永远不会离开浏览器,因此可以放心粘贴机密令牌和凭据。
可以将文本编码回 Base64 吗?
可以。请使用配套的 文本转 Base64 工具将任意 UTF-8 文本编码为 Base64 字符串。