Base64 编码是什么?一看就懂

编码入门 · 阅读约 3 分钟

在代码里看到一长串 5bCP6bih5bel5YW3 这样的"天书"?那多半是 Base64 编码

一、Base64 是什么

Base64 是一种把二进制数据(图片、文件、任意字节)翻译成纯文本字符(A–Z、a–z、0–9、+、/ 共 64 个)的编码方式。它不是加密,只是"换一种写法",目的是让二进制能在只认文本的环境里安全传输。

二、它都用在哪里

  • 网页内嵌小图data:image/png;base64,xxxxx 把图片直接写进 HTML/CSS,省一次请求;
  • 邮件附件:早期邮件只传文本,附件必须 Base64 后才能塞进去;
  • 接口传文件:把图片/文件编码成字符串,随 JSON 一起提交;
  • 简单混淆:让内容一眼看不出原文(但不是加密,谁都能解)。

三、在线编解码

Base64 编解码 工具:文本粘贴进去点"编码"即得 Base64,反过来粘 Base64 点"解码"还原。全过程在浏览器本地完成。

四、中文的坑(必看)

中文不能直接按"字"编码,要先转成 UTF-8 字节再 Base64。同一个"你好",用 GBK 和 UTF-8 编码出来的结果完全不同。所以编码和解码必须用同一套字符集,否则解出来是乱码。

💡 排查乱码: 解码出来是 你好 这种怪字符,几乎都是"编码用 UTF-8、解码却按别的字符集"导致的。统一成 UTF-8 即可。

五、常见疑问

Q:Base64 能当密码用吗?
不能。它可逆且无密钥,任何人都能秒解,只能算"轻度混淆"。

Q:编码后变长了?
是的,体积约膨胀 33%,所以大文件不适合 Base64。

去编解码 Base64 →

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