Base64 编解码
UTF-8 安全的 Base64 编码与解码,中文不乱码;双向面板独立工作互不干扰。
>_ 使用指南 · GUIDE
在编码面板粘贴原文,立即得到 Base64 字符串;在解码面板粘贴 Base64,立即还原原文。两个面板独立工作互不干扰,来回对照调试很顺手。
很多在线 Base64 工具处理中文会乱码,根源是编码时没有按 UTF-8 处理。本工具采用 UTF-8 安全方案,中文、Emoji、生僻字编码再解码都能完整还原,不会出现 䏿–‡ 这类乱码。
编码与解码全部在浏览器本地完成,文本不出你的设备,处理带敏感字段的报文也放心。
>_ 常见问题 · FAQ
Q1 · Base64 编码后中文变成乱码怎么办?
乱码通常是工具没有按 UTF-8 处理中文导致的。本工具按 UTF-8 标准编码,中文输入「你好」得到的编码,用任何 UTF-8 标准解码器都能还原出「你好」;粘贴进来重新解码一次即可验证。
Q2 · Base64 是加密吗?
不是。Base64 是编码而非加密——它只改变数据的表示形式,没有任何密钥,任何人拿到 Base64 字符串都能直接还原原文。它常用于让二进制数据在纯文本协议(如 HTTP、JSON、邮件)中安全传输,绝不能用来保护密码或敏感信息。需要保密应该使用真正的加密算法。
Q3 · 为什么编码后数据变大了?
Base64 用 4 个字符表示 3 个字节的数据,体积约变为原来的 4/3(约 133%);如果原数据含大量中文(每字 3 字节),膨胀比例相同。所以大文件不适合用 Base64 内嵌,小图标、短文本才是它的主场。
Q4 · Base64 末尾的等号(=)是什么意思?
Base64 按 3 字节一组编码,数据长度不是 3 的整数倍时,用 = 或 == 补齐到 4 字符的倍数。看到末尾一个等号表示原数据多 1 字节,两个等号表示多 2 字节,没有等号表示刚好整除。
Q5 · Base64 字符串里的 + / = 传到 URL 里会不会出问题?
会。+ 在 URL 查询串中会被解析成空格,/ 和 = 也有特殊含义,直接拼接 URL 可能导致解码出错。标准做法是改用 URL 安全的 Base64 变体(把 + 换成 -、/ 换成 _)或先做一次 URL 编码,接收方按相同规则还原即可。本工具的编码面板提供「URL-safe」开关(另含 76 列换行选项,用于邮件协议场景),解码侧会自动识别并还原 URL-safe 字母表。
Q6 · 能把图片直接转成 dataURL 吗?
可以。把图片或任意文件拖入编码面板(或点击「选择文件」),输出区会同时给出纯 Base64 与带 data:image/png;base64, 前缀的完整 dataURL,并显示原始大小与编码后体积的对比(如 24 KB → 32 KB, +33%),前端内联图片的体积代价一目了然。文件上限 10 MB,超限时建议先压缩;解码侧粘贴含 dataURL 前缀的字符串也能直接剥离前缀解回原始内容。