Base64 编解码
文本、文件、图片与 Base64 互转,支持标准 / URL 安全 / MIME。
模式
变体
原文输入
0 chars · 0 bytes
Base64 输出
0 chars · 0 bytes
使用说明
用途
Base64 在线编码解码工具,支持文本、图片、文件三种模式的双向转换。文本模式把任意字符串(含中文、Emoji、特殊符号)编码为 Base64 ASCII 安全字符串,反之亦然,编码默认按 UTF-8;图片模式把 PNG、JPG、WebP 等本地图片转 Data URL 嵌入 HTML/CSS;文件模式把任意小文件转 Base64 用于嵌入 JSON 接口或邮件附件。所有处理在浏览器本地完成,文件零上传零追踪。同时支持 URL-safe Base64(用于 JWT / URL 参数)、不带填充、换行格式(MIME 76 列断行)等变体。
操作步骤
- 选模式:文本(默认)/ 图片 / 文件
- 文本模式:左侧粘贴原文,右侧得到 Base64;反向粘贴 Base64 自动解码
- 编码字符集可切换:UTF-8(默认,含中文 Emoji 安全)/ ASCII / GBK
- URL-safe 选项:把 +/= 替换为 -_,去掉填充等号(适合 URL 参数和 JWT)
- MIME 格式:每 76 列加换行,用于邮件 multipart 编码
- 图片模式:拖入图片自动生成 data:image/png;base64,... 完整 Data URL
- 文件模式:拖入任意文件(建议 <5MB)生成 Base64,可下载为 .txt
- 反向解码 Base64 自动检测内容类型,文本直接显示,图片/文件提供下载
常见问题
- Base64 编码后的长度比原文长多少?
- 约长 33%(4/3 倍)。每 3 字节原文编码为 4 字节 Base64 字符。1KB 原文变成约 1.33KB Base64。这就是为什么大文件不适合 Base64 传输 —— 既增加带宽又增加 JSON 解析开销。
- 中文字符串编码后解码出来是乱码?
- 通常是编码字符集不一致。本工具默认 UTF-8 编码。如果原文是 GBK 编码(老 Windows / 部分 PHP 后端),需要在编码前先把 GBK 转 UTF-8 或切换字符集。Base64 本身只对字节做编码,不知道字符编码。
- URL-safe Base64 和标准 Base64 有什么区别?
- 标准 Base64 用 + / = 这三个字符,但 + 在 URL 里是空格,/ 是路径分隔符,= 不能用于 query 参数。URL-safe 把 + 换成 -,/ 换成 _,= 通常省略。JWT、URL 参数、文件名都用 URL-safe。
- 为什么我的 JWT token 解析失败说不是合法 Base64?
- JWT 用的是 URL-safe Base64 without padding。如果你拿去标准 Base64 解码器粘 JWT 的 header/payload,会因为 - _ 字符或缺失 = 报错。本工具勾选「URL-safe」选项即可正确解析。或用专门的 jwt-decoder 工具一键拆解。
- 把图片转 Base64 嵌入 HTML,加载会更快吗?
- 小图标(<5KB)嵌入可减少一次 HTTP 请求,确实更快。大图片嵌入反而拖慢页面加载(HTML 体积膨胀 + 无法独立缓存)。最佳实践:< 2KB 的 logo / 装饰图标嵌入,其他用 <img src>。
应用场景
- 嵌入图片到 CSS / HTML:把小 logo 转 Data URL 嵌进 background-image,避免额外 HTTP 请求
- 调试 JWT:先把 JWT 的 header / payload 三段用 URL-safe Base64 解码看 claim 内容
- API 传图片:后端只接受 JSON 时,前端把图片转 Base64 放进 JSON 字段上传
- 邮件多语言主题:邮件协议 RFC 2047 要求非 ASCII 主题用 Base64 + UTF-8 编码
- 生成测试数据:把任意二进制数据转 Base64 字符串,便于在 Postman / 单元测试里粘贴
适用场景
前端嵌入小图标到 CSS、JWT 调试、API 传二进制、邮件主题编码、单元测试数据生成。前端、后端、QA、安全工程师常用。UTF-8 / GBK 编码可选、URL-safe 变体、图片/文件模式是关键差异点。