Toolkitbar

Base64 编码 — 免费,在浏览器内运行

把文本变成 Base64,并且用目标系统认识的那套字符表。

选项

在你的设备上运行 你粘贴的内容由你自己的浏览器处理,不会发送到任何服务器,离开页面后也不会留在任何地方。

一句话答案

文本可以在浏览器里免费编码成 Base64,无需上传。文本会先按 UTF-8 编码成字节,再用 Base64 字符表写出这些字节 —— 这正是中文、重音字母和 emoji 能被正确处理的原因。还可以选择 URL 安全变体,它把加号和斜杠换成连字符和下划线,并去掉末尾填充,因此结果可以原样放进查询字符串或文件名。

一览

支持输入任意文本
输出格式Base64(标准或 URL 安全)
处理方式浏览器本地
价格免费,无次数限制
账号无需注册

Base64 不是加密,也从来不打算是:它只是一种用 64 个字符书写任意字节的方式,好让这些字节能穿过那些只为文本设计的系统。这就是它出现在 data URI、HTTP Basic 凭据、邮件附件以及每个 JWT 的头部和载荷里的原因。任何人都能解开它,所以它藏不住任何东西。

UTF-8 那一步正是大多数手写实现出错的地方。浏览器自带的 btoa 拒绝任何码位高于 U+00FF 的字符,所以一个天真的编码器碰到第一个中文字或重音字母就会抛异常;这里的做法是先取文本真正的字节,这也是其他所有 Base64 实现的做法,因此结果能在任何语言里往返还原。

使用步骤

  1. 1

    粘贴文本

    什么都行 —— 一句话、一段 JSON 载荷、一份证书正文。

  2. 2

    选择字符表

    绝大多数情况选标准。结果要放进 URL、文件名或 JWT 时选 URL 安全。

  3. 3

    点击转换

    编码后的字符串立刻出现。为此没有任何数据被发送出去。

  4. 4

    复制结果

    “复制”放进剪贴板,也可以下载成文本文件。

常见问题

Base64 会加密我的文本吗?

不会,而且千万别当成加密用。Base64 是一种没有密钥的可逆编码 —— 拿到字符串的人都能读出原文。它是用来让字节穿过文本通道的,不是用来藏东西的。

支持 emoji 和中文吗?

支持。文本会先转成 UTF-8 字节再编码,所以每个字符都能完整往返。那些直接基于 btoa 写的编码器,恰恰就是在这类输入上失败的。

什么时候该选 URL 安全?

当结果要出现在 URL、查询参数、文件名或 JWT 里的时候。标准 Base64 用的 + 和 / 在 URL 里另有含义,末尾的 = 填充也经常需要转义,URL 安全字符表把这三个问题一并避开了。

编码后会大多少?

大约三分之一。Base64 把每 3 个字节写成 4 个字符,所以编码后大致是原来的 133%,再加上填充。

相关工具

浏览全部开发者工具