文件 Base64 互转
任意文件转 Base64 文本或 Data URI,粘贴 Base64 本地还原并下载原文件;20MB 上限,全程本机不联网。
>_ 使用指南 · GUIDE
把任意文件(不限于图片)转成 Base64 文本或 Data URI,用于内嵌进 JSON、HTML、CSS 或日志;反向粘贴 Base64 自动还原成可下载的原文件。整个流程在本机完成——编码向用 FileReader 读字节,解码向在内存重建 Blob,全程不联网。
典型步骤:
- 编码:拖入文件(≤20MB),输出框给出完整 Data URI,信息区显示前后体积
- 按需复制:「复制 Base64」取纯编码串,「复制 Data URI」取可直接放进
src/href的完整形式 - 解码:右侧粘贴 Base64 或 Data URI(前缀与空白自动剥离),填文件名后一键还原下载
- 核对体积:信息区实时显示 Base64 化后的膨胀比例(约 1.33 倍),评估内嵌是否划算
>_ 常见问题 · FAQ
Q1 · Base64 会让文件变大多少?
编码后约为原文件的 4/3(约 1.33 倍),加上 data: 前缀与传输中的引号转义可能更多。小图标、小字体适合内嵌;几百 KB 以上的文件建议保持独立文件走正常请求,还能命中浏览器缓存。
Q2 · Data URI 和纯 Base64 有什么区别?
纯 Base64 只是编码串,接收方需要额外知道内容类型;Data URI 是 data:<MIME>;base64,<编码> 的自描述完整格式,可直接放进 <img src>、<a href> 或 CSS url()。给浏览器用选 Data URI,给接口协议传字段通常用纯 Base64。
Q3 · 粘贴的 Base64 报「无效」怎么排查?
常见三种:混入了换行或空格(工具会自动剥离,不是问题)、URL-safe 变体用了 -_ 字符(工具自动转回标准表)、长度对 4 取余为 1(说明编码串被截断)。报错信息会指出具体原因,按提示核对来源即可。
Q4 · 为什么限制 20MB?
Base64 化在浏览器内存中要同时持有原始字节与膨胀后的字符串(约 2.3 倍体积),更大的文件容易把移动端页签卡死。这是体验保护而非能力上限——大文件请在本地用命令行(base64 file / openssl base64 -in file)处理。
Q5 · 文件内容会被上传吗?
不会。编码与解码全部在你的浏览器内完成,页面不发任何网络请求。这也是它适合处理带敏感内容的文件(合同扫描件、内部文档)的前提——还原和生成都不经过任何服务器。