Base64 编解码

中文不乱码的 Base64 编解码,支持 URL Safe 变体、MIME 换行与图片 Data URL。全部在浏览器内完成。

🔒 本地运行⌨️ Ctrl+Enter 执行
输入22 字符 · 1 行
输出✔ 编码成功
56CB5Yac5p2C6LSn6ZO6IMK3IEJhc2U2NCB0ZXN0IPCfmoA=
输入 22 → 输出 48
编码前后对照
项目值
原始长度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。

⚠️
免责声明
  • 本工具为纯前端实现,输入内容仅在你的浏览器本地处理,不上传、不存储于服务器。
  • 结果仅供开发调试参考。对于超长文本、特殊编码、非标准格式或极端边界输入,可能存在解析偏差或精度损失。
  • 请勿在本工具中处理生产环境密钥、个人敏感信息或涉密数据。因浏览器插件、剪贴板、共享设备等本站无法控制的环节导致的泄露,本站不承担责任。
  • 重要数据请自行备份并二次校验,勿将本工具输出直接用于生产环境。
  • 在法律允许的范围内,本站不对因使用或依赖本工具输出结果而产生的任何直接或间接损失承担责任。继续使用即表示你已理解并接受本声明。
发现结果有误?欢迎 反馈给我们,我们会尽快核实修正 · 详见 《隐私声明》