golang使用socket中文乱码解决办法

家电维修 2023-07-16 19:17www.caominkang.com家电维修技术

用go编写Socket发现,从客户端输入中文时,服务器端无法正常显示出现乱码。

我们可以对中文进行转码来解决。

转码可以使用go官方的golang./x/text包实现。

安装命令如下

go get golang./x/text

转换编码格式的函数如下

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

使用转换编码格式函数

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

更多golang知识请关注PHP中文网golang教程栏目。

Copyright © 2016-2025 www.jianfeikang.com 建飞家电维修 版权所有 Power by