GoLang 解决中文乱码

互联网 2022/5/22 6:04:44

首先需要下载 go get golang.org/x/text/encoding/simplifiedchinese go get golang.org/x/text/transformpackage mainimport ("bytes""golang.org/x/text/encoding/simplifiedchinese""golang.org/x/text/transform""io/ioutil"…

首先需要下载

go get golang.org/x/text/encoding/simplifiedchinese

go get golang.org/x/text/transform

 

package main

import (
    "bytes"
    "golang.org/x/text/encoding/simplifiedchinese"
    "golang.org/x/text/transform"
    "io/ioutil"
)

//GBK -> UTF-8
func GbkToUtf8(s []byte) ([]byte, error) {
    reader := transform.NewReader(bytes.NewReader(s), simplifiedchinese.GBK.NewDecoder())
    all, err := ioutil.ReadAll(reader)
    if err != nil {
        return all, err
    }
    return all, nil
}

//UTF-8 -> GBK
func Utf8ToGbk(s []byte) ([]byte, error) {
    reader := transform.NewReader(bytes.NewReader(s), simplifiedchinese.GBK.NewEncoder())
    all, err := ioutil.ReadAll(reader)
    if err != nil {
        return all, err
    }
    return all, nil
}

func main() {
    path := `D:\A\桌面\a.txt`

    open, _ := os.Open(path)
    all, _ := ioutil.ReadAll(open)
    utf8, _ := GbkToUtf8(all)
    fmt.Println(string(utf8))
}

 

随时随地学软件编程-关注百度小程序和微信小程序
关于找一找教程网

本站文章仅代表作者观点,不代表本站立场,所有文章非营利性免费分享。
本站提供了软件编程、网站开发技术、服务器运维、人工智能等等IT技术文章,希望广大程序员努力学习,让我们用科技改变世界。
[GoLang 解决中文乱码]http://www.zyiz.net/tech/detail-324155.html

赞(0)
关注微信小程序
程序员编程王-随时随地学编程

扫描二维码或查找【程序员编程王】

可以随时随地学编程啦!

技术文章导航 更多>