Golang GBK转UTF-8的例子

yipeiwu_com5年前Python基础

问题:在 Golang 的调试过程中出现中文乱码

原因:Golang 默认不支持 UTF-8 以外的字符集

解决:将字符串的编码转换成UTF-8

首先需要 mahonia 这个包

go get github.com/axgle/mahonia

然后新建一个 func

src 字符串

srcCode 字符串当前编码

tagCode 要转换的编码

func ConvertToString(src string, srcCode string, tagCode string) string {

 srcCoder := mahonia.NewDecoder(srcCode)

 srcResult := srcCoder.ConvertString(src)

 tagCoder := mahonia.NewDecoder(tagCode)

 _, cdata, _ := tagCoder.Translate([]byte(srcResult), true)

 result := string(cdata)

 return result

}

例子:

调用 ConvertToString 方法

str := "乱码的字符串变量"

str = ConvertToString(str, "gbk", "utf-8")

fmt.Println(str)

以上这篇Golang GBK转UTF-8的例子就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

利用python将json数据转换为csv格式的方法

假设.json文件中存储的数据为: {"type": "Point", "link": "http://www.dianping.com/newhotel/22416995", "c...

对python中的高效迭代器函数详解

对python中的高效迭代器函数详解

python中内置的库中有个itertools,可以满足我们在编程中绝大多数需要迭代的场合,当然也可以自己造轮子,但是有现成的好用的轮子不妨也学习一下,看哪个用的顺手~ 首先还是要先im...

python实现登陆知乎获得个人收藏并保存为word文件

这个程序其实很早之前就完成了,一直没有发出了,趁着最近不是很忙就分享给大家. 使用BeautifulSoup模块和urllib2模块实现,然后保存成word是使用python docx模...

使用tqdm显示Python代码执行进度功能

使用tqdm显示Python代码执行进度功能

在使用Python执行一些比较耗时的操作时,为了方便观察进度,通常使用进度条的方式来可视化呈现。Python中的tqdm就是用来实现此功能的。 先来看看tqdm的进度条效果:  ...

简单讲解Python中的数字类型及基本的数学计算

Python有四种类型的数字: 1.整型  a = 2 print a 2.长整型  b = 123456789 print b 3....