如何解决go语言乱码问题

如何解决go语言乱码问题,第1张

如何解决go语言乱码问题

go语言乱码的解决办法:首先下载第三方软件包;然后解压出来,并将文件夹改为text;接着在go安装路径的src下创建文件夹,并将text文件夹放在其中;最后完成编码转换即可。

本文环境:Windows7系统、Go1.11.2版,本文适用于所有品牌的电脑。

推荐教程:《go语言教程

go语言中文乱码解决

windows上在学golang做爬虫时,会出现中文乱码问题,网上相对这方面的介绍不多,在此做一个解决记录。

结合几个博客,现给出最明了的解决方法:

1.先下载第三方软件包:https://github.com/golang/text

2.然后解压出来,文件夹改为text

3.在go安装路径的src下创建文件夹,目录大致为:C:\Go\src\golang.org\x\,然后再将步骤2中的text文件夹放在这个目录下,即为:C:\Go\src\golang.org\x\text;

4.现在就可完成编码转换了;

用法示例如下:(参考自ccmouse老师代码)

package main
// gopm get -g -v golang.org/x/text
import (
"net/http"
"fmt"
"io/ioutil"
"golang.org/x/text/encoding/simplifiedchinese"
// "golang.org/x/text/encoding/simplifiedchinese"
"golang.org/x/text/transform"
)
func main()  {
fmt.Println("hello world")
resp, err := http.Get("http://city.zhenai.com/xian")
if err != nil {
panic(err)
}
defer resp.Body.Close()
if resp.StatusCode != http.StatusOK {
fmt.Println("Error: status code", resp.StatusCode)
return
}
utf8Reader := transform.NewReader(resp.Body, 
simplifiedchinese.GBK.NewDecoder())
all, err := ioutil.ReadAll(utf8Reader)
if err != nil {
panic(err)
}
fmt.Printf("%s\n", all)
}

更多相关技术文章,请访问golang教程栏目!

以上就是如何解决go语言乱码问题的详细内容,

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/langs/684309.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-20
下一篇 2022-04-20

发表评论

登录后才能评论

评论列表(0条)

保存