透過 MCP 連接 →

輸入計算

數學公式

廣告

結果

Base64 輸出結果
SGVsbG8=
UTF-8 編碼
輸入位元組數(UTF-8) 5
輸出字元數 8

什麼是 Base64 編碼?

Base64 是一種「二進位轉文字」的編碼方式,只用 64 個可列印的 ASCII 字元就能表示任意位元組資料,包括 A-Za-z0-9,再加上 +/。它的應用範圍很廣:可以把圖片直接嵌進 HTML/CSS(data URI)、在電子郵件中傳送二進位附件(MIME)、用於 JSON Web Token,以及任何需要讓二進位資料安全通過純文字通道的場景。這個工具會把你輸入的文字先轉成 UTF-8 位元組,再進行 Base64 編碼。

如何使用這個編碼器

把文字輸入或貼到欄位中,按下送出即可。工具會先將文字轉換成 UTF-8 位元組,套用標準的 Base64 演算法,接著回傳編碼後的字串,同時顯示輸入的位元組數與輸出的字元數。

公式說明

編碼器每次讀取三個位元組。三個位元組共 24 位元,剛好可平均切成四段各 6 位元的區塊。每個 6 位元的數值(0–63)會對應到字元集中的某個位置,產生一個輸出字元。當輸入長度不是 3 的倍數時,演算法會為最後一組補位:剩下一個位元組會產生兩個字元再加上 ==,剩下兩個位元組則產生三個字元再加上一個 =。因此輸出長度永遠是 $$\text{Base64} = \operatorname{encode}_{64}\!\left(\text{Text}\right), \qquad L_{out} = 4 \left\lceil \frac{L_{in}}{3} \right\rceil$$。

展示三個 8 位元組重組為四個 6 位元 Base64 字元的示意圖
Base64 將三個 8 位元組(24 位元)重新分成四個 6 位元區塊,每個區塊對應一個字元。

實際範例

以文字 Man 為例。它的 ASCII 位元組是 77、97、110 → 二進位為 01001101 01100001 01101110。切成 6 位元區塊:010011 = 19 → T010110 = 22 → W000101 = 5 → F101110 = 46 → u。結果為 TWFu——輸入 3 個位元組、輸出 4 個字元,沒有補位。

將單字從文字轉換為位元組、位元再到 Base64 字元的步驟流程
實例演示:文字先變成位元組,再變成 6 位元分組,最後產生 Base64 字串。

常見問題

為什麼我的輸出結尾有 = 符號?當輸入的位元組數不是 3 的倍數時,系統會用補位把最後一組補滿,讓輸出長度維持為 4 的倍數。

Base64 會加密我的資料嗎?不會。Base64 是編碼,不是加密——任何人都能解碼還原。它只是讓二進位資料能以文字形式安全傳輸。

為什麼輸出會比輸入大?因為每 3 個位元組會變成 4 個字元,Base64 大約會讓資料量增加 33%。

最後更新: