2017-03-01 45 views
0

如何將Golang中的字符串轉換爲UTF-8,方法與在Python中使用str.encode('utf8')相同? (我試圖將一些代碼從Python轉換爲Golang; str來自用戶輸入,編碼用於計算散列)golang中python編碼('utf8')的等效

據我所知,Python代碼將unicode文本轉換爲字符串。該字符串是UTF-8字節的集合。這聽起來與Go中的字符串類似。那麼當我將一些文本存儲爲Go字符串時,這種編碼已經完成了嗎?

我是否應該走過串並嘗試utf8.EncodeRune去?我很困惑。

+1

Go中的字符串被假定爲utf8編碼。你想解決什麼問題? – JimB

+0

我正在嘗試加密用戶輸入的密碼。在對它進行加密之前,python代碼會執行str.encode('utf8')。我想知道如何在Go中執行相同的操作,但我想它已「處理完畢」了? – Jim

+0

請仔細閱讀https://blog.golang.org/strings。 – Volker

回答

5

在Python中,str.encode('utf8')將字符串轉換爲字節。在Go中,字符串已經被utf-8編碼,如果你需要字節,你可以這樣做:[]byte(str)