首頁 >後端開發 >Golang >golang使用socket中文亂碼解決方法

golang使用socket中文亂碼解決方法

尚
原創
2019-12-24 11:52:4312027瀏覽

golang使用socket中文亂碼解決方法

用go寫Socket發現,從客戶端輸入中文時,伺服器端無法正常顯示出現亂碼。

golang使用socket中文亂碼解決方法

我們可以對中文進行轉碼來解決。

轉碼可以使用go官方的golang.org/x/text套件實作。

安裝指令如下:

go get golang.org/x/text

轉換編碼格式的函數如下:

func GbToUtf8(s []byte) ([]byte, error) { 
    //reader := transform.NewReader(byte.NewReader(s), simplifiedchinese.GBK.NewEncoder())     
reader := transform.NewReader(bytes.NewReader(s),simplifiedchinese.GBK.NewDecoder())     
d, e := ioutil.ReadAll(reader)     
if e != nil {         
  return nil, e     
  }     
  return d, nil 
}

使用轉換編碼格式函數:

v, err := GbToUtf8(buf[0:n])

更多golang知識請關注PHP中文網站golang教學專欄。

以上是golang使用socket中文亂碼解決方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn