编码 / 解码

文件编码 (支持拖拽)

选择或 拖拽文件 至此区域,将自动编码为 Base64。如果是图片文件,将在上方显示预览。

Base64 的常见使用场景

Base64 是一种将二进制数据转换为 ASCII 字符串的编码方式,广泛应用于以下开发场景:

  • Data URI (小图内联):将较小的图片(如 Icon、Logo)转为 Base64 直接嵌入 CSS 或 HTML 中,减少 HTTP 请求数,提升页面加载速度。
  • API 接口传输:在 JSON 等纯文本协议中传输二进制文件(如图片、PDF、音频),避免二进制流解析问题。
  • 邮件附件:SMTP 协议早期不支持 8 位字节传输,MIME 标准使用 Base64 对附件进行编码以确保安全传输。
  • 简单的混淆/隐藏:虽然 Base64 不是加密算法,但常用于对 URL 参数、简单的配置信息进行轻度混淆,避免明文暴露。

各编程语言 Base64 处理代码速查表

在前后端开发中,经常需要对数据进行 Base64 编解码。以下是主流语言的核心代码片段:

语言 编码 (Encode) 解码 (Decode)
JavaScript btoa(unescape(encodeURIComponent(str))) decodeURIComponent(escape(atob(str)))
Python base64.b64encode(data).decode() base64.b64decode(data).decode()
Java Base64.getEncoder().encodeToString(bytes) Base64.getDecoder().decode(str)
Go base64.StdEncoding.EncodeToString([]byte) base64.StdEncoding.DecodeString(str)
PHP base64_encode($data) base64_decode($str)

常见问题

Base64 编解码工具安全吗?数据会上传服务器吗?

完全安全。所有 Base64 编码和解码都在你的浏览器本地完成,文本和文件内容不会上传到任何服务器,也不会被记录。

Base64 编码后数据会变大多少?

Base64 编码会将原始数据体积增加约 33%,因为每 3 字节原始数据会被转换为 4 个 ASCII 字符。例如 100 字节的文件编码后约为 136 字符。

什么是 URL-Safe Base64?

标准 Base64 包含 +/ 字符,这在 URL 传输中会被转义(变成 %2B 等),导致解析错误。URL-Safe Base64 将 + 替换为 -/ 替换为 _,并去掉末尾的 = 填充符,非常适合放在 URL 参数或 JWT Token 中。

为什么解码失败,提示「无效的 Base64 字符串」?

常见原因包括:字符串中混入了空格或换行(可使用本工具的「清理格式」功能一键修复)、使用了 URL-safe Base64 而非标准 Base64、末尾缺少填充字符 =

Base64 编码支持中文和 Unicode 字符吗?

支持。本工具在编码前会先进行 UTF-8 转换,确保中文、日文、emoji 等 Unicode 字符都能正确编码和还原,不会出现乱码。