這個工具的用途
Base64 把任意位元組轉成 64 個字元組成的 ASCII 字母表,讓資料能安全地穿過 URL、JSON、email 標頭等對原始 binary 不友善的場景。本工具把 UTF-8 文字(或拖入的檔案)編成 Base64,也能把 Base64 解回文字,支援 URL-safe 變體(RFC 4648 §5)。所有運算都在你的瀏覽器內完成——資料不會上傳。
使用步驟
選擇編碼或解碼,再選標準或URL-safe。貼上輸入、拖入檔案,或載入範例。
編碼範例:
輸入:hello world
輸出:aGVsbG8gd29ybGQ=解碼範例(URL-safe,無 padding):
輸入:6L6T5YWl5L2g5aW9
輸出:輸入你好限制與邊界情況
- 解碼後的位元組必須是合法 UTF-8 才能正確顯示文字。對 PNG 或 zip 解碼會顯示「not valid UTF-8」錯誤——這是工具拒絕把你的資料變成亂碼。
- 標準變體永遠使用
+、/與結尾的=padding。URL-safe 變體則改用-與_,且可省略 padding。解碼會自動容許兩種字母表。 - 輸入裡的空白與換行會在解碼前被去除(所以 email 裡 MIME 包裝過的 Base64 或 PEM 金鑰都能直接貼上)。
- 大檔案(> 數 MB)一樣在瀏覽器內處理;非常大的輸入請預期會稍待片刻。
常見問題
- 我的資料會送到伺服器嗎?
- 不會。編碼和解碼都完全在你的瀏覽器內進行,本頁從不上傳輸入。
- 標準和 URL-safe Base64 差在哪?
- 標準(RFC 4648 §4)使用 + / =。URL-safe(§5)把 + 和 / 換成 - 和 _,所以編出的值可以直接放進 URL 或檔名而不需要再 escape。URL-safe 的 padding 是選擇性的。
- 為什麼解碼時出現「not valid UTF-8」?
- 解碼後的位元組不是文字——而是 binary 資料(例如圖片、金鑰、壓縮檔)。Base64 本身沒問題;問題在於底層位元組不是 UTF-8 字串。要處理 binary 請用 Download 按鈕儲存原始位元組。
- 支援 emoji 和中文字嗎?
- 支援。輸入會先以 UTF-8 編碼再轉 Base64,所以「你好」、👋 等非 ASCII 字元都能完整往返。
- 可以拖入檔案編碼嗎?
- 可以。用 Upload 按鈕或把檔案拖到輸入面板,檔案的位元組會被編成 Base64。
- 為什麼我的 Base64 字串有時以 == 或 = 結尾,有時沒有?
- 標準 Base64 會用 = 把輸出補到 4 的倍數。URL-safe Base64 常常省略 padding。解碼器應該兩種都接受——這個工具就是。