Base64 清理
免费在线 Base64 清理工具,去除 Base64 字符串中的换行、空格、不可见字符等无效内容。支持去空白、去特殊字符、自动补齐 padding 三个独立选项,输出严格符合 RFC 4648 的 Base64。
相关推荐
什么是 Base64 清理?
Base64 清理是从 Base64 字符串中去除所有无效字符和冗余字符的操作。目标是输出严格符合 RFC 4648 标准的纯 Base64,便于在不同系统间传递、存储、解码。
为什么要清理:Base64 在不同来源中常被混入无效字符。①换行符(\n、\r\n)—— 邮件附件、数据库字段、日志输出;②空格和制表符 —— 人工粘贴、Excel 复制;③UTF-8 BOM(EF BB BF)—— Windows 系统保存的文本文件;④全角符号、中文标点 —— 复制粘贴错误。这些都会触发解码器报错。
三种清理选项:①去空白(\s \n \r \t)—— 处理换行和空格;②去特殊字符 —— 仅保留 Base64 字母表 A-Z a-z 0-9 + / = - _;③自动补齐 padding —— 让结果长度为 4 的倍数。三个选项可以独立勾选,按需组合。
典型用途:①API 调试 —— 粘贴第三方接口返回的 Base64 报错时清理;②数据库导入 —— 去除 Excel 复制时带的多余空格;③解码前预处理 —— 避免 atob() 报 InvalidCharacterError;④JWT / Data URL 规范化 —— 处理跨系统传输差异。
适用场景
- 解码前预处理:把第三方接口、JWT、日志中带换行或空格的 Base64 清理成可直接解码的形式,避免 InvalidCharacterError。
- Excel / 邮件粘贴修复:去除从 Excel 单元格、邮件正文复制 Base64 时混入的多余空格、Tab、换行符。
- JWT token 清理:把带换行的 JWT 三段式字符串(header.payload.signature)规范成单行,移除多余空白。
- MIME 附件处理:清理邮件附件 Base64 中每 76 字符自动换行的格式,方便后续解码。
- URL Safe 兼容:保留 - 和 _ 字符,让 JWT、URL 路径、文件名中的 Base64 不会被误删。
- 批量清理前的预处理:与 base64-format / base64-padding 配合使用,先清理再格式化或补齐。
使用方法
- 粘贴或输入含噪声的 Base64 字符串(可带换行、空格等无效字符)。
- 按需勾选清理选项:去空白、去特殊字符、自动补齐 padding(默认三项全开)。
- 查看右侧输出:实时显示清理后的 Base64、字符计数、移除字符数、解码合法性。
- 复制结果到剪贴板,或下载为 .txt 文件用于后续处理。
功能特点
- 去空白选项:自动去除 \n、\r、\t 和空格,处理邮件附件、Excel 粘贴等场景。
- 去特殊字符选项:仅保留 A-Z a-z 0-9 + / = - _ 共 66 个合法 Base64 字符。
- 自动补齐 padding:可勾选让结果长度变成 4 的倍数,修复长度错误。
- 三个选项独立可叠加:按需勾选,灵活应对不同污染情况。
- URL Safe 字符保留:不会误删 - 和 _,避免 JWT / URL 场景的字符丢失。
- 实时校验输出:用浏览器 atob() 检测输出是否可解码,状态实时显示。
- 字符计数与移除提示:实时显示输入/输出字符数、移除字符数、可解码状态。
- 本地浏览器处理:所有清理操作在本地完成,原始 Base64 不上传任何服务器。
最佳实践
先用清理,再用 padding 工具补齐
清理只去除无效字符和可选补齐 padding。如果 Base64 同时存在换行和缺失 padding,建议先勾选全部三项清理,再观察输出长度是否仍非 4 的倍数。如仍有 padding 异常,可再用专门的 padding 工具。
JWT token 三段式单独处理
JWT 是 header.payload.signature 三段 Base64URL 用 . 连接的整体。清理时三段都需要去除空白,但不要在段之间插入额外字符,否则签名校验会失败。建议粘贴前先按 . 拆分,逐段清理后再拼接。
URL Safe 输入不要勾选「去特殊字符」
URL Safe Base64 用 - 和 _ 替代 + 和 /。本工具默认会保留这 4 个字符,但如果手动设置了更严的字符白名单(只允许 +/),URL Safe 输入会被破坏。如不确定字符集,先关闭「去特殊字符」只保留「去空白」。
清理后仍报错 → 检查编码与 BOM
如果清理后 atob() 仍然报 InvalidCharacterError,可能是 UTF-8 BOM(EF BB BF)或 UTF-16 字节序残留。本工具的「去空白」选项不针对 BOM,建议在浏览器控制台用 TextDecoder 重新按 UTF-8 解码后再次清理。
BOM 来源识别:Windows 保存的 txt
如果 Base64 是从 Windows 的「记事本」另存为 UTF-8 得到,前 3 个字节(EF BB BF)就是 BOM。即使清理了空白和换行,atob 仍可能识别失败。处理方法:用 VS Code 或 PowerShell 重新保存为 UTF-8 无 BOM 格式。
教学和文档演示时展示清理前后对比
Base64 清理是教学中的常见痛点。建议在写文档时同时附上清理前和清理后的 Base64,加上字符数和可解码状态对比,让读者直观理解每个选项的作用。
常见问题
Base64 清理会改变原始字节吗?
不会。清理只去除无效字符(空白、换行、非 Base64 字符),不会修改中间的合法字符。如果只去除空白和非法字符,清理前后的字节内容完全一致。如果勾选了「自动补齐 padding」,仅在末尾追加 =,不影响原始字节。
三种清理选项有什么区别?
去空白:去除 \s \n \r \t(空格、换行、回车、Tab)。去特殊字符:仅保留 A-Z a-z 0-9 + / = - _ 共 66 个 Base64 合法字符。自动补齐 padding:在末尾追加 = 让长度变成 4 的倍数。三个选项独立可组合。
为什么 atob() 报 InvalidCharacterError?
常见原因:①含中文、Unicode 表情或其他非 ASCII 字符;②含换行或空格(Excel 复制、邮件粘贴的常见情况);③Base64URL 字符(- / _)混用;④长度不是 4 的倍数。本工具的清理可解决前 3 个问题,补齐 padding 工具可解决第 4 个。
清理会删除 padding 吗?
不会。= 是 Base64 的合法字符,本工具的「去特殊字符」选项明确保留 =。如果想删除 padding,请用专门的 padding 工具(base64-padding)切换到「去填充」模式。
包含换行怎么清理?
默认勾选「去空白」即可处理。换行符(\n / \r\n)和 Tab、空格都会被去除。如果需要保留换行(MIME 邮件附件格式),关闭「去空白」选项。
本工具能处理 UTF-8 BOM 吗?
BOM(EF BB BF)是 Unicode 字符 U+FEFF,本工具的「去空白」使用正则 \s \n \r \t 不包含 U+FEFF,因此 BOM 可能残留。如遇 BOM 导致的 InvalidCharacterError,建议先在代码或浏览器控制台用 TextDecoder 去掉 BOM。
URL Safe 和标准 Base64 字符会互转吗?
不会。本工具的「去特殊字符」选项保留 + / - _ 四种字符,仅做去噪不主动转换。如需 URL Safe ↔ 标准字符互转,请用专门的 Base64URL 工具(base64-url-safe)。
我的内容会上传服务器吗?
不会。所有清理逻辑都在浏览器本地执行,原始 Base64 字符串不会离开你的设备。处理敏感数据(凭证、密钥、token)也可以放心使用。
可以一次清理多段 Base64 吗?
本工具是单段清理界面。如有多段 Base64 需要清理,建议循环调用本工具的逻辑,或使用对应的命令行工具(如 base64 命令)。如需批量编码/解码,请用 base64-batch-encode / base64-batch-decode。
故障排查
清理后 atob 仍然报错
可能是长度问题(不是 4 的倍数)或者 BOM / 编码残留。先确认勾选了「自动补齐 padding」,如仍报错尝试在浏览器控制台用 TextDecoder 重新按 UTF-8 解码,去掉 BOM 后再次清理。
清理后长度变了,但解码仍然失败
可能原始内容不是标准 Base64,例如是 Base32 / Base58 / Base85。请确认原始数据的编码格式,并切换到对应工具。也可以尝试 atob 前先用 btoa 测试原字符串是否能重新编码。
清理后字符变得很少
很可能「去特殊字符」选项过于严格,把 + / - _ 也去掉了。请检查是否误关了字符白名单;本工具默认保留全部 66 个 Base64 合法字符。如果输入是 URL Safe,关闭「去特殊字符」即可。
粘贴后没有任何输出
可能输入完全是空白字符(仅含空格 / 换行 / Tab),本工具的「去空白」选项会全部去除后留下空字符串。请检查原始输入是否包含至少一个 Base64 字符(A-Z a-z 0-9 + / =)。
术语表
- UTF-8 BOM
- 字节顺序标记。Windows 系统保存 UTF-8 文本时附加的 3 字节前缀(0xEF 0xBB 0xBF),会让 Base64 解码器把首字符当成非法字节。
- URL Safe Base64
- RFC 4648 §5 定义的 Base64 URL 安全变体,把 + 和 / 替换为 - 和 _。本工具的「去特殊字符」选项保留这 4 个字符,避免误删。
- 换行符
- \r\n(Windows)和 \n(Unix / macOS)。邮件附件的 MIME Base64 通常每 76 字符换行一次,清理时需要去除。
- 有效 Base64 字符
- 标准 Base64 字符集为 A-Z、a-z、0-9、+、/、=(padding),加上 URL Safe 变体的 -、_,共 66 个合法字符。
- InvalidCharacterError
- 浏览器 atob() 抛出的解码错误。当 Base64 字符串包含合法字符表外的字符(中文、空格、特殊符号等)时会触发。
Base64 字符集与保留规则
本工具「去特殊字符」选项保留的合法字符表。
| 字符类型 | 字符 | 保留规则 |
|---|---|---|
字母 | A-Z, a-z | 52 字符,必保留 |
数字 | 0-9 | 10 字符,必保留 |
标准 Base64 符号 | + / | 2 字符,必保留 |
URL Safe 符号 | - _ | 2 字符,URLSafe 场景必保留 |
Padding | = | 末尾填充,必保留 |
空白 | 空格, \n, \r, \t | 按「去空白」选项去除 |
其他 | 中文 / 表情 / BOM 等 | 按「去特殊字符」选项去除 |
5 种 Base64 常见污染来源
了解 Base64 字符串如何被混入无效内容。
| 污染来源 | 混入内容 | 推荐选项 |
|---|---|---|
邮件附件 | \r\n 每 76 字符 | 去空白 |
Excel / 数据库粘贴 | 前后空格 / Tab | 去空白 |
Windows txt 文件 | UTF-8 BOM (EF BB BF) | 去特殊字符 + 手动去 BOM |
URL / 文件名 | + / 字符冲突 | 保留 URLSafe(用 base64-url-safe 转换) |
日志 / trace 输出 | 调试前缀 / 后缀 | 去特殊字符 |
3 个清理选项对比
三个选项独立可叠加,按需组合使用。
| 选项 | 行为 | 典型场景 |
|---|---|---|
去空白 | 去除 \s \n \r \t | 邮件 / Excel / 日志 |
去特殊字符 | 仅保留 Base64 字母表 | 混入中文 / 表情 / BOM |
自动补齐 padding | 末尾追加 = 至 4 倍数 | 长度非 4 倍数 |
Authoritative References
- 安全字符串比较
- 二进制编码解码
- 凯撒密码
- 摩尔斯电码
- 十六进制编码解码
- 视频转 Base64
- Base64 转视频
- 图片转 Base64
- Base64 转图片
- 文本转 Base64
- Base64 转文本
- 文件哈希校验
- 文件转 Base64
- Base64 转文件
- 音频转Base64
- Base64转音频
- AES 加密解密
- DES 加密解密
- Base32 编码解码
- Base58 编码解码
- Base64 编码
- Base64 解码
- Base64 比较
- Base64 拆分
- Base64 多行合并
- Base64 格式化
- Base64 格式校验
- Base64 批量编码
- Base64 批量解码
- Base64 清理
- Base64 填充处理
- Base64 长度统计
- Base64 转十六进制
- Base64 DataURL 转换
- Base64-Hex 互转
- Base85 编码解码
- HMAC 生成与验证
- PBKDF2 密钥派生
- MD5 哈希值
- SHA-256 哈希
- SHA1 哈希
- SHA512 哈希
- JWT 解码、验证与生成
- HTML 编码解码
- Unicode 转义
- URL 编码
- URL Safe Base64
- MIME Base64
- Java 代码混淆
- JavaScript 代码混淆
- PHP 混淆
- Python混淆