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设计】。

相关文章

django+xadmin+djcelery实现后台管理定时任务

django+xadmin+djcelery实现后台管理定时任务

继上一篇中间表的数据是动态的,图表展示的数据才比较准确。这里用到一个新的模块Djcelery,安装配置步骤如下: 1.安装 redis==2.10.6 celery==3.1.23 dj...

Python读取视频的两种方法(imageio和cv2)

用python读取视频有两种主要方法,大家可依据自己的需求进行使用。 方法一: 使用imageio库,没有安装的可用pip安装或自己下载,安装好后重启终端即可调用。 import p...

Tensorflow Summary用法学习笔记

最近在研究tensorflow自带的例程speech_command,顺便学习tensorflow的一些基本用法。 其中tensorboard 作为一款可视化神器,可以说是学习tenso...

人生苦短我用python python如何快速入门?

假设你希望学习Python这门语言,却苦于找不到一个简短而全面的入门教程。那么本教程将花费十分钟的时间带你走入Python的大门。本文的内容介于教程(Toturial)和速查手册(Che...

Python面向对象程序设计中类的定义、实例化、封装及私有变量/方法详解

本文实例讲述了Python面向对象程序设计中类的定义、实例化、封装及私有变量/方法。分享给大家供大家参考,具体如下: 1. 定义类 python中定义一个类的格式如下: class...