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權杖清理:把帶換行的 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權杖三段式單獨處理
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 字串不會離開你的裝置。處理敏感資料(憑證、金鑰、權杖)也可以放心使用。
可以一次清理多段 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 混淆
- JS 混淆
- PHP 混淆
- Python 混淆