Base64 編碼解碼

免登入・本機計算・資料不上傳

文字與 Base64 雙向即時轉換,正確支援中文與 emoji(很多同類工具最容易在這裡出包),也能把檔案轉成 Base64 Data URL。邊打邊看結果,不用按按鈕。

例:設定檔裡一長串看不懂的字串、需要把小圖片內嵌進 HTML/CSS 裡,都是 Base64 常出現的地方。

全程在你的瀏覽器本機處理,內容不會上傳到任何伺服器。

文字(明文)
Base64
怎麼算的?

文字模式:輸入文字時,先用瀏覽器原生的 TextEncoder 把文字轉成正確的 UTF-8 位元組序列, 再用標準 Base64 演算法(每 3 個位元組轉成 4 個字元)編碼;貼上 Base64 時走反方向, 解出位元組後用 TextDecoder 還原成文字,兩邊都內建嚴格的 UTF-8 驗證, 如果貼上的 Base64 解出來不是合法的 UTF-8 文字(例如其實是圖片的 Base64),會提示你這段內容可能不是純文字。

檔案模式:直接讀取你選擇的檔案原始位元組轉成 Base64 Data URL,不經過文字編碼這一層, 所以檔案類型完全不受限(圖片、PDF、任何格式都可以)。

資料來源與依據

最後核對日期:2026-07-27

常見問題

Base64 是什麼?我平常會在哪裡遇到它?

Base64 是一種把「任何資料」轉成「純英數字母+幾個符號」的編碼方式,常見出現在:設定檔或環境變數裡一長串看起來亂碼的字(例如金鑰、憑證)、網頁圖片直接內嵌在 HTML/CSS 裡的一長串 data:image/... 開頭文字、API 回傳資料裡包一段檔案內容。它不是加密,只是換一種「安全好傳輸」的寫法,任何人都能還原回原本內容。

為什麼我之前用別的工具轉中文會變亂碼?

最常見的原因是工具內部直接呼叫瀏覽器最陽春的 btoa(),這個函式天生只認識「一個字元一個位元組」的舊式編碼(Latin-1),中文、emoji 這類需要多個位元組表示的字元丟進去,不是直接報錯就是轉出亂碼。這個工具會先把文字轉成正確的 UTF-8 位元組再編碼,所以中文、emoji、任何 Unicode 字元來回轉換都能完整還原。

URL-safe 是什麼,什麼時候要切换?

標準 Base64 會用到 + 和 / 這兩個符號,但這兩個符號在網址(URL)裡有特殊意義,直接塞進網址參數可能會出錯或被誤解讀。URL-safe 版本把 + 換成 -、/ 換成 _,並且省略結尾的 = 補齊符號,這樣轉出來的字串可以直接放進網址參數或檔名,不會有衝突。如果你是要放進網址,選 URL-safe;如果是一般設定檔或程式裡的字串,用標準版本就好,兩種本質是同一份資料。

檔案轉 Base64 之後可以做什麼?

轉出來的是一段「Data URL」(開頭像 data:image/png;base64,... 這樣),可以直接貼到 HTML 的 <img src="..."> 或 CSS 的 background-image 裡,讓小圖片不用另外發一次網路請求就能顯示;也常用在需要把檔案內容包進 JSON、程式碼或設定檔裡傳遞的情境。要注意 Base64 編碼後檔案體積會膨脹約 33%,不適合大檔案。