本文摘自php中文网,作者藏色散人,侵删。

golang 嵌入乱码怎么办?Golang中文乱码问题
在学习golang读取文件的过程中,遇到中文显示乱码的问题!golang没有自带的编解码包,因此需要借助第三方包
解决方法:
引入第三发转码包:git clone https://github.com/axgle/mahonia.git
接下来直接上代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 | package main
import (
"bufio"
"fmt"
"io"
"mahonia"
"os"
)
func main() {
var enc mahonia.Decoder
enc = mahonia.NewDecoder( "gbk" )
file, err := os.Open( "e:/test.txt" )
if err != nil {
fmt.Println( "open file err=" , err)
}
defer file.Close()
reader := bufio.NewReader(file)
for {
str, err := reader.ReadString( '\n' )
if err == io.EOF {
break
}
fmt.Println( "UTF-8 to GBK:" , enc.ConvertString(str))
}
fmt.Println( "文件读取结束" )
}
|
更多golang知识请关注PHP中文网golang教程栏目。
以上就是golang 嵌入乱码怎么办的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
golang判断interface为nil
【gocn酷go推荐】protobuf生成go代码插件gogo/protobuf
手撸golang 行为型设计模式 策略模式
这可能是最容易理解的 go mutex 源码剖析
go语言标准库之context
golang 适合做web开发吗
go实现安全并发map读写
golang中的channel通道
kube-apiserver内存溢出问题调查及go tool pprof工具的使用
手撸golang 行为型设计模式 访问者模式
更多相关阅读请进入《golang》频道 >>
老貘
一个与时俱进的Go编程知识库。
转载请注明出处:木庄网络博客 » golang 嵌入乱码怎么办