GO语言中文字符串编码转换
golang在处理中文字符串编码的时候默认的编码方式为UTF-8,今天在处理某些硬件对接的时候,需要用到GBK2312编码后的字符串。golang官方提供了simplifiedchinese包用于中文字符串的编码方式处理,以下为解决思路。
import (
"fmt"
"golang.org/x/text/encoding/simplifiedchinese"
)
// 字符串GBK2312编码方式解码方法
func str2gbk(text string) []byte{
TextBuff, err := simplifiedchinese.GBK.NewEncoder().String(text)
if err != nil {
fmt.Println(err)
}
return TextBuff
}
今天在处理电子屏对接的时候再次遇到了中文编码的问题,采用了另一种方式解决。
import (
"fmt"
"github.com/axgle/mahonia"
)
// 字符串GBK2312编码方式解码方法
func str2gbk(text string) []byte{
enc:=mahonia.NewEncoder("gbk")
TextBuff := []byte(enc.ConvertString(text))
if err != nil {
fmt.Println(err)
}
return TextBuff
}
版权声明:本文为weixin_43919745原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。