Base64 解码器
将 Base64 编码还原为可读文本,完整支持 Unicode 字符。
Base64 解码能自动处理的情况
从邮件、日志或配置文件里复制的 Base64 很少是干净的。这个 Base64 解码工具会处理常见的问题:
- 换行和空格会先被去掉,所以像邮件源码那样分成多行的 Base64 也能当作一整串解码。
- 缺少末尾的等号没有关系。
SGVsbG8和SGVsbG8=都解码为 Hello。 - 首尾的空白会被忽略。
解码出的内容按 UTF-8 读取,所以按 UTF-8 编码的中文可以正常显示:5L2g5aW9 解码为“你好”,5Lit5paH5rWL6K+V 解码为“中文测试”。
提示“无效的 Base64 输入。”的几种原因
出现下面任何一种情况,整段输入都会解码失败:
- URL 安全字符。
-和_不在标准字母表里。把-换成+、_换成/,比如Pj4-Pz8_改成Pj4+Pz8/,就能解码为 >>>???。如果要解析整个 JWT,用本站的 JWT 解码器,它会自动做这个转换。 - 带着 data URI 前缀。删掉开头的
data:text/plain;base64,,只保留逗号后面的部分。 - 两段 Base64 粘在一起。中间出现等号,比如
SGk=SGk=,会被拒绝。请分开解码。 - 字符串被截断。如果按 4 个一组划分后最后只剩 1 个字符,比如单独的
T,说明有数据缺失。
中文解出来是乱码,多半是 GBK 编码
解码得到的字节一律按 UTF-8 解读。不是合法 UTF-8 的字节序列会显示成替换字符 �,而不会报错。中文用户遇到乱码,最常见的原因是原文用的是 GBK 或 GB2312 编码,这在一些老系统和旧文件里仍然常见:
| Base64 | 原文编码 | 本工具显示 |
|---|---|---|
5L2g5aW9 | UTF-8 的“你好” | 你好 |
xOO6ww== | GBK 的“你好” | ��� |
这种情况下 Base64 本身没有问题,只是本工具不能切换成别的编码来解读,需要用支持 GBK 的程序或编辑器处理。另一种情况是数据本来就不是文本:图片、PDF、压缩包或加密数据解出来都是一堆符号和 �。
解码之后怎么检查
解码会原样还原内容,连格式也一样。解出来的 JSON 往往没有任何缩进,粘贴到 JSON 格式化工具里会更好读。
如果解出来的结果仍是一串字母、数字、+ 和 /,很可能被编码了两次,再解码一次即可。
常见问题
怎么判断一段字符串是不是 Base64?+
看字符和长度。标准 Base64 只用 A 到 Z、a 到 z、0 到 9、+ 和 /,末尾常有一两个等号,长度通常是 4 的倍数。如果解码器能接受,而且输出可读,答案就有了。
Base64 解码后中文乱码怎么办?+
原文多半不是 UTF-8 编码,常见的是 GBK。例如 GBK 编码的“你好”是 xOO6ww==,在这里会显示为 ���。本工具只按 UTF-8 解读,需要换用支持 GBK 的程序处理。
Base64 图片能在这里查看吗?+
不能。解码器只显示文本,图片会变成无法阅读的符号。想看图片,可以把完整的 data URI 当作网页中图片的地址来打开。
解码时输入的内容会上传吗?+
不会。解码在你的浏览器里完成,粘贴进来的令牌和凭据都留在你的设备上。