什么是 Base64?为什么中文会乱码

知识科普 · 阅读约 4 分钟

你也许在图片地址、邮件附件、接口参数里见过一长串 aGVsbG8= 这样的字符——那就是 Base64。它常让人一头雾水,但其实原理很简单。

一、Base64 是什么

Base64 是一种把任意数据"翻译"成只用 64 个安全字符表示的编码方式。这 64 个字符是 A-Z a-z 0-9 + /,加上补位的 =

它不是加密,只是换一种"写法"——任何人都能解开,所以别拿它当"加密"用。

二、它有什么用

  • 把二进制塞进文本:邮件、JSON、URL 只能传文本,图片等二进制要先转 Base64;
  • 网页内嵌小图标:把图片转成 Base64 直接写进 CSS/HTML,少一次请求;
  • 接口传参:某些接口约定用 Base64 传值。

三、为什么中文会变乱码

Base64 按字节处理数据,而一个中文字符在 UTF-8 里占 3 个字节。如果编码和解码时用的字符集不一致(比如一边 UTF-8、一边 GBK),中文就会变乱码。

解决办法:编码和解码统一用 UTF-8。规范的在线工具(比如我们的 Base64 工具)已内置 UTF-8 处理,中文不会乱。

💡 一句话记住:Base64 = 把数据"换个安全写法",方便在只认文本的地方传输,不等于加密

四、怎么用

打开 在线 Base64 工具:粘贴文本点"编码"得到 Base64;粘贴 Base64 点"解码"还原原文,支持中文。

五、常见问题

Q:Base64 会变长吗?
会,大约比原数据长 1/3,因为用 4 个字符表示 3 个字节。

Q:能用来加密密码吗?
不能,Base64 可逆且无密钥,绝对不要用它保护敏感信息。

去编解码 →

广告位
此处为广告展示区,站点主粘贴发布商 ID 后自动展示。