tomai
登入
免費 · 開發者工具

Base64 編碼/解碼

正確處理中文與 Emoji,支援 URL-safe 與檔案轉換

原文
Base64

什麼是 Base64 編碼?

Base64 是一種把二進位資料或任意文字轉換成安全 ASCII 字串的編碼方式,字元集只包含字母、數字、加號、斜線和等號。它不是加密,而是讓資料能安全穿過只認純文字的通道,例如郵件附件、URL 或 JSON 欄位。這個工具依 UTF-8 正確處理中文、日文、Emoji 等所有字元,來回轉換不會亂碼——這正是很多簡易轉換器踩過的坑。它也支援 RFC 4648 定義的 URL-safe 變體,並可以把檔案直接轉成 Base64。適合開發者、測試人員,以及需要在系統之間搬移資料的人。

這款工具能做什麼

  • 🔡 將文字編碼為 Base64,UTF-8 字元全部正確處理
  • 🔄 把 Base64 解碼回可讀文字
  • 🔗 URL-safe 變體:用 - 和 _ 取代 + 和 /,並去掉填充符號
  • 📎 支援將最大 5 MB 的檔案轉換為 Base64
  • 📈 顯示兩個方向的位元組數與字元數
  • 📋 一鍵複製結果

什麼時候會用到

  • 把二進位內容或非 ASCII 文字嵌入 JSON、XML 欄位
  • 驗證舊介面回傳的 Base64 載荷能否正確解碼
  • 讓資料可以安全放進 URL 查詢參數
  • 從日誌裡解碼郵件附件的 Base64 內容

隱私:編碼和解碼全部在瀏覽器本地完成,輸入內容不會上傳到任何伺服器。檔案轉換也是本機讀取,最大支援 5 MB。

Base64 能做什麼、不能做什麼

🌍

任何文字都完好往返

編碼與解碼都經過正確的 UTF-8 處理,中文、日文、表情符號等任何文字都能逐位元組還原——這正是那些樸素轉換器弄亂非 ASCII 文字的地方。

🔗

URL 安全且容錯

RFC 4648 的 URL 安全變體把加號與斜線換成連字號與底線並移除填充,解碼端則容忍空白字元,還能自動辨識 URL 安全的輸入。

📎

檔案轉 Base64

上傳最大 5MB 的檔案,一次即可轉為 Base64 字串,報告同時顯示輸入位元組數與輸出入字元數,貼到任何地方之前就能看清體積開銷。

RFC 4648 中的 Base64

標準字母表是 A–Z a–z 0–9 + /,以 = 補位;每 3 個輸入位元組變成 4 個輸出字元——約 33% 的體積開銷要預留。URL 安全變體把 +/ 換成 -_,編碼結果才能在 URL 和檔名中安然存在。

  • 解碼時容許空白與缺少補位——複製來的字串通常直接可用。
  • 編碼不是加密:任何看得到字串的人都能解碼。它用於傳用於傳輸,絕不用於保密。

常見問題

為什麼有些工具編碼中文會亂碼?

JavaScript 原生 btoa() 只支援 Latin-1 字元。我們先用 TextEncoder 把文字轉成 UTF-8 位元組再編碼,中文、日文、Emoji 等所有文字都能正確往返。

什麼是 URL-safe Base64?

RFC 4648 第 5 節定義的變體:把 + 換成 -、/ 換成 _ 並去掉 = 填充,結果可以直接放進 URL、檔名和 JWT 而無需跳脫。勾選 URL-safe 即可編碼或解碼該格式。

Base64 是加密嗎?

不是。它只是編碼,任何人都能瞬間解碼。適合資料傳輸和嵌入場景,絕不能用來隱藏機密資訊。

相關工具

相關工具