Golang GBK转UTF-8的例子

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

相关文章

pandas获取groupby分组里最大值所在的行方法

pandas获取groupby分组里最大值所在的行方法 如下面这个DataFrame,按照Mt分组,取出Count最大的那行 import pandas as pd df = pd....

利用python numpy+matplotlib绘制股票k线图的方法

利用python numpy+matplotlib绘制股票k线图的方法

一、python numpy + matplotlib 画股票k线图 # -- coding: utf-8 -- import requests import numpy as np...

Python中使用platform模块获取系统信息的用法教程

操作系统相关 system() : 操作系统类型(见例) version(): 操作系统版本 release(): 操作系统发布号, 例如win 7返回7, 还有如NT,...

Python的Flask框架及Nginx实现静态文件访问限制功能

Nginx配置 Ngnix,一个高性能的web服务器,毫无疑问它是当下的宠儿。卓越的性能,灵活可扩展,在服务器领域里攻城拔寨,征战天下。 静态文件对于大多数website是不可或缺的一部...

python生成随机验证码(中文验证码)示例

复制代码 代码如下:# -*- coding: utf-8 -*-import Image,ImageDraw,ImageFontimport randomimport math, st...