兄弟連Go語言培訓教程帶你實戰GO案例(6)Go Base64編碼
來源:互聯網
上載者:User
兄弟連Go語言培訓課程體系設計架構包括了區塊鏈的基礎語言Go語言、區塊鏈後端技術體系、區塊鏈公鏈、區塊鏈分布式應用開發等內容講解,以及到最後的面試指導和項目實戰。課程由清華微軟Google名師團隊精心打造,曆時半年時間共同研發而出。 GoBase64編碼 Go提供了對base64編碼和解碼的內建支援 packagemain //這種匯入包的文法將預設的base64起了一個別名b64,這樣 //我們在下面就可以直接使用b64表示這個包,省點輸入量 importb64"encoding/base64" import"fmt" funcmain(){ //這裡是我們用來示範編碼和解碼的字串 data:="abc123!?$*&()'-=@~" //Go支援標準的和相容URL的base64編碼。 //我們這裡使用標準的base64編碼,這個 //函數需要一個`[]byte`參數,所以將這 //個字串轉換為位元組數組 sEnc:=b64.StdEncoding.EncodeToString([]byte(data)) fmt.Println(sEnc) //解碼一個base64編碼可能返回一個錯誤, //如果你不知道輸入是否是正確的base64 //編碼,你需要檢測一些解碼錯誤 sDec,_:=b64.StdEncoding.DecodeString(sEnc) fmt.Println(string(sDec)) fmt.Println() //使用相容URL的base64編碼和解碼 uEnc:=b64.URLEncoding.EncodeToString([]byte(data)) fmt.Println(uEnc) uDec,_:=b64.URLEncoding.DecodeString(uEnc) fmt.Println(string(uDec)) } 運行結果 YWJjMTIzIT8kKiYoKSctPUB+ abc123!?$*&()'-=@~ YWJjMTIzIT8kKiYoKSctPUB- abc123!?$*&()'-=@~ 這兩種方法都將原資料編碼為base64編碼,區別在於標準的編碼後面是+,而相容URL的編碼方式後面 是-。87 次點擊