0{r,size:=utf8. DecodeRune(content)br=a"/> 0{r,size:=utf8. DecodeRune(content)br=a">
我嘗試讀取非utf8編碼的檔案並列印出內容。喜歡:
content, _ := os.readfile("example.csv") fmt.println(string(content))
輸出:
���������������������������
#然後,我嘗試轉換符文的內容並將其解碼為 utf8,如下所示:
br := make([]rune, 0) for len(content) > 0 { r, size := utf8.DecodeRune(content) br = append(br, r) content = content[size:] } fmt.Println(string(br))
但是結果是一樣的。我怎樣才能獲得正確的內容? ps:我不知道檔案編碼類型,它們可以是raditionalchinese.big5或japanese.shiftjis等幾種類型,內容不能是檔案。它可以是一個字串。
很可能您需要來自golang.org/x/ 的軟體包text/encoding
層次結構。
特別是 golang.org/x/text/encoding /charmap
允許建立 encoding。 Decoder
能夠將傳統非 UTF-8 編碼中的位元組流轉換為 Go 原生的 UTF-8 編碼資料流。
以上是讀取非UTF8編碼的檔案內容並正確列印出來的詳細內容。更多資訊請關注PHP中文網其他相關文章!