Base64 编解码
中文不乱码的 Base64 编解码,支持 URL Safe 变体、MIME 换行与图片 Data URL。全部在浏览器内完成。
🔒 本地运行⌨️ Ctrl+Enter 执行
输入22 字符 · 1 行
输出✔ 编码成功
56CB5Yac5p2C6LSn6ZO6IMK3IEJhc2U2NCB0ZXN0IPCfmoA=
编码前后对照
| 项目 | 值 |
|---|---|
| 原始长度 | 22 字符 |
| UTF-8 字节 | 35 字节 |
| 结果长度 | 48 字符 |
| 体积变化 | 218.2% |
编解码常见问题
为什么中文 Base64 在有些工具上会乱码?
浏览器原生的 btoa() 只接受 Latin-1 字符。正确做法是先用 UTF-8 把字符串转成字节再编码,本工具用 TextEncoder 处理,因此中文、emoji 都不会乱码。
URL Safe Base64 和标准 Base64 差别在哪?
URL Safe 变体把 + 换成 -、/ 换成 _,并去掉结尾的 =,用于 JWT、URL 参数等场景,避免被再次转义。
encodeURI 和 encodeURIComponent 怎么选?
编码「整条 URL」用 encodeURI,它会保留 : / ? & = #;编码「单个参数值」必须用 encodeURIComponent,否则值里的 & 会把参数截断。
Base64 会让体积变大吗?
会。每 3 字节编成 4 个字符,体积约增大 33%。所以图片内联只适合小图标,大图仍应走 CDN。