本文摘自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不支持泛型吗?
手撸golang 仿spring ioc/aop 之10 增强1
一文搞懂如何实现 go 超时控制
详解golang string和[]byte的对比
golang 为什么还有指针
go设计模式之状态模式浅谈
golang基础-高级数据结构
golang不定长参数写法
聊聊dubbo-go-proxy的discoveryservice
golang 踩坑时间parse转换后加8小时
更多相关阅读请进入《golang》频道 >>
老貘
一个与时俱进的Go编程知识库。
转载请注明出处:木庄网络博客 » golang 嵌入乱码怎么办