1.base64編碼對照表標(biāo)準(zhǔn)如下:

2.base64 編碼原理:
ps:? 1字節(jié)byte = 8bit位? -> 一字節(jié)可存儲(chǔ)一個(gè)漢字,兩個(gè)英文字母。
base64編碼一共64個(gè)字符,可以用6個(gè)bit位(2^6 = 64)表示出來,一字節(jié)由8個(gè)bit位,多余兩位用0填充。(注:一個(gè)base64字符仍有8個(gè)bit位,有效部分為右六位)。
Base64編碼時(shí),是將3個(gè)字節(jié)轉(zhuǎn)變?yōu)?個(gè)字節(jié),最終得到的字節(jié)數(shù)必然是4的倍數(shù)。
接下來我們通過實(shí)例來分析:(將字符csf轉(zhuǎn)換成base64編碼)
①字符轉(zhuǎn)ASCII碼(ASCII碼對照表見附圖)
c=>99, s=>115, f=>102

②ASCII碼轉(zhuǎn)成二進(jìn)制
99=>0110?0011,115=>0111?0011,102=>0110?0110
③三個(gè)字節(jié)(3x8=24bit位)轉(zhuǎn)成四個(gè)字節(jié)(4x6=24bit位),并在每個(gè)6bit位前補(bǔ)兩個(gè)0,重新變成8bit位的字節(jié)
轉(zhuǎn)換結(jié)果:011000? ?110111? ?001101? ?100110
補(bǔ)零:--->?00011000? ??00110111? ??00001101? ??00100110
④將補(bǔ)零后的結(jié)果轉(zhuǎn)換成十進(jìn)制
00011000 => 2^4+2^3 = 24
00110111 => 55
00001101 =>13
00100110 =>38
⑤對照上方的base64編碼表
得到結(jié)果為:Y3Nm
ps:值得注意的是,base64編碼過程最后可能碰到不足三位的情況,這種情況在轉(zhuǎn)化成6位時(shí)用0補(bǔ)位,轉(zhuǎn)換后若六位全為‘空’,則轉(zhuǎn)換結(jié)果用=號(hào)代替。如下圖:

同理 ,字符L(ASCII碼為76)轉(zhuǎn)換結(jié)果為TA==。
以上純屬個(gè)人理解。