🔧 Base64 二进制编码器 — 将文件/字节编码为 Base64(支持 Base64url + MIME 选项)
100% 客户端处理(无需上传至服务器)。将二进制文件/字节编码为 Base64,支持格式预设(RFC 4648、Base64url、MIME 换行)、填充控制、严格验证和批量多文件支持。同时支持将 Base64 解码回可下载的文件。
功能特点
- 上传或拖放二进制文件(支持多文件批量处理)
- 两种操作:编码文件 → Base64,或解码 Base64 → 文件下载
- 格式预设:RFC 4648(标准)、RFC 4648 URL 安全(Base64url)、RFC 2045 MIME(76 字符换行 + CRLF)
- 填充控制:自动、始终包含 "="、或省略填充
- 编码输出的可选换行长度(0 表示禁用;MIME 通常使用 76)
- 严格验证模式,拒绝无效字符/填充(适用于调试)
- Base64 输出上的可选末尾换行(编码模式)
- 100% 客户端处理(无需上传至服务器)。
使用方法 for base64-binary-encoder
拖放一个或多个文件(或粘贴 Base64 进行解码)
对于编码,将您的二进制文件拖放到上传区域。对于解码,粘贴您收到的 Base64 字符串(例如来自 JSON、日志或电子邮件)。
选择操作/模式并运行
选择“操作”:“编码文件 → Base64”或“解码 Base64 → 文件”,然后点击相应的运行按钮(编码/解码)。如果需要,选择一个“格式”预设(标准/Base64url/MIME),调整填充和换行设置,并在调试格式错误的 Base64 时启用“严格验证”。
复制 Base64 输出或下载解码后的文件
编码后,复制 Base64 文本(根据您的设置,可选择换行/以换行符结尾)。解码后,下载重建的二进制文件(文件命名在可能时遵循工具的规则)。
技术规格
执行模型
运行时披露、约束以及您的数据如何处理。
| 方面 | 详情 |
|---|---|
| 模式 | 100% 客户端处理(无需上传至服务器)。 |
| 操作范围 | 编码二进制 → Base64(主要),以及解码 Base64 → 二进制下载 |
| 输入 | 编码:文件/Blob/Uint8Array/ArrayBuffer/TypedArray。解码:Base64 字符串 |
| 输出 | 编码:Base64文本。解码:字节作为可下载文件 |
| 限制 | 约1–2MB字符;约25000毫秒超时 |
| 数据保留 | 所有处理均在您的浏览器本地完成(无上传) |
微型示例
一个编码为Base64(标准RFC 4648)的微小字节序列。
| 项目 | 值 |
|---|---|
| 输入字节(十六进制) | 00 01 02 03 04 05 06 07 08 09 |
| 输出Base64 | AAECAwQFBgcICQ== |
| 输出差异情况 | Base64url将"+"/"/"替换为"-"/"_";填充符可能省略;MIME格式可能换行 |
错误与边缘情况
常见故障模式及后续处理建议。
| 现象 | 可能原因 | 检查事项 |
|---|---|---|
| 解码输入必须为字符串 | 尝试解码时提供了字节/文件而非Base64文本 | 对文件选择"编码"操作;解码时请粘贴Base64字符串 |
| 本工具编码二进制数据...而非文本字符串 | 尝试将文本粘贴到二进制编码器中进行编码 | 编码请上传文件(或提供字节);纯文本工作流请使用文本Base64工具 |
| 无效字符/严格验证失败 | Base64包含所选格式不允许的字符,或填充符错误 | 确认"格式"(标准/Base64url/MIME)与"填充"设置;关闭严格模式以接受宽松输入 |
| 长度/填充错误(尤其严格模式开启时) | Base64被截断、"="填充错误或字母表混用 | 重新复制完整数据;确保未丢失末尾"=",或将填充设置为"自动" |
| 输入过大(最大2MB) | 数据量超出工具安全限制 | 分割文件/数据,或对更大数据使用本地CLI/脚本 |
| 适配器调用超时 | 处理超过约25秒超时限制(取决于数据大小/设备性能) | 尝试使用较小的输入、禁用实时预览,或切换到本地命令行工具 |
命令行替代方案
对于大文件、机密信息或CI使用场景,请在本地运行Base64编码/解码。以下是规范且广泛可用的选项。
Linux/macOS (coreutils)
将文件编码为Base64(无换行)
base64 -w 0 input.bin > output.b64.txt将input.bin编码为Base64。-w 0标志禁用行换行(GNU coreutils)。
将文件编码为MIME风格的Base64换行格式(每行76字符)
base64 -w 76 input.bin > output.mime.b64.txt符合常见的MIME行长度。(换行符可能因平台而异,不一定使用CRLF。)
将Base64解码回文件
base64 -d input.b64.txt > output.bin将Base64文本解码为原始字节。
macOS (BSD base64) / Unix
将文件编码为Base64
base64 < input.bin > output.b64.txtBSD base64使用与GNU不同的标志;此形式具有较广的兼容性。
将Base64解码回文件
base64 -D < input.b64.txt > output.bin在macOS/BSD上,解码通常使用-D(而非-d)。
OpenSSL(跨平台)
将文件编码为Base64(单行)
openssl base64 -A -in input.bin -out output.b64.txt-A标志输出单行(无换行)。
将Base64解码回字节
openssl base64 -d -in input.b64.txt -out output.bin在coreutils base64不可用时很有用。
Node.js
将文件编码为Base64
node -e "const fs=require('fs'); const b=fs.readFileSync('input.bin'); process.stdout.write(b.toString('base64'))" > output.b64.txt读取字节并输出Base64。
将Base64解码到文件
node -e "const fs=require('fs'); const s=fs.readFileSync('input.b64.txt','utf8').trim(); fs.writeFileSync('output.bin', Buffer.from(s,'base64'))"将Base64文本解码为原始字节。
Python
将文件编码为Base64
python -c "import base64,sys; sys.stdout.write(base64.b64encode(open('input.bin','rb').read()).decode('ascii'))" > output.b64.txt将文件字节编码为Base64 ASCII。
将Base64解码回文件
python -c "import base64; open('output.bin','wb').write(base64.b64decode(open('input.b64.txt','rb').read()))"将Base64解码为原始字节。
使用场景
将二进制数据嵌入文本通道
- 在JSON负载中附加小型二进制文件
- 将文件以Base64格式粘贴到问题跟踪器或文档中
- 通过仅接受文本的系统传输字节数据
调试其他系统生成的Base64
- 切换标准/Base64url/MIME预设以匹配生成器
- 启用严格验证以捕获填充/字母表错误
- 使用解码确认负载能重构原始文件
CI流水线中对小型产物的检查
- 在发布前验证产物解码无误
- 标准化Base64输出(换行/填充)以实现稳定差异对比
更安全地分享非机密二进制片段
- 无需通过邮件发送原始二进制文件即可分享可复现的测试夹具
- 避免在浏览器工具中处理密钥;对密钥/令牌使用本地CLI工具
❓ Frequently Asked Questions
此工具是否提供公共API?
API端点。处理过程是本地还是远程?
Base64数据均在您的浏览器本地处理。可以在此安全地编码机密信息(密钥、令牌、密码)吗?
为什么解码会失败并提示“无效字符”或“填充错误”?
为什么无法通过直接粘贴文本来编码?
Base64编码器,以便明确进行文本到字节的编码。Pro Tips
如需URL安全的令牌,请选择Base64url预设;它会将"+"/"/"替换为"-"/"_",且根据您的设置通常会省略填充字符。
调试解码失败时,启用严格验证可获取更早、更清晰的失败信息,待确定生产方特性后可放宽此设置。
为保持CI中差异稳定,请标准化换行和结尾换行符,确保Base64输出在不同环境中保持一致。
处理大文件或敏感内容时,建议优先使用本地CLI工具;可避免浏览器限制,并减少通过剪贴板或扩展程序意外泄露的风险。
Additional Resources
Other Tools
- CSS 美化器
- HTML 美化器
- JavaScript 美化器
- PHP 美化器
- 颜色选择器
- 精灵图提取器
- Base32 二进制编码器
- Base32 解码器
- Base32 编码器
- Base58 二进制编码器
- Base58 解码器
- Base58 编码器
- Base62 二进制编码器
- Base62 解码器
- Base62 编码器
- Base64 解码器
- Base64 编码器
- 十六进制二进制编码器
- 十六进制解码器
- 十六进制编码器
- C# 格式化器
- CSV 格式化器
- Dockerfile Formatter
- Elm 格式化器
- ENV 格式化器
- Go 格式化器
- GraphQL 格式化器
- HCL 格式化器
- INI 格式化器
- JSON 格式化器
- LaTeX 格式化器
- Markdown 格式化器
- Objective-C 格式化器
- Php Formatter
- Proto 格式化器
- Python 格式化器
- Ruby 格式化器
- Rust 格式化器
- Scala 格式化器
- Shell 脚本格式化器
- SQL 格式化器
- SVG 格式化工具
- Swift 格式化工具
- TOML 格式化工具
- Typescript Formatter
- XML 格式化工具
- YAML 格式化工具
- Yarn 格式化工具
- CSS 压缩器
- Html Minifier
- Javascript Minifier
- JSON 压缩器
- XML 压缩器
- HTTP 头部查看器
- PDF 转文本
- 正则表达式测试器
- 搜索引擎排名检查器
- Whois 查询