登录 用户中心() [退出] 后台管理 注册
   
您的位置: 首页 >> SoftHub关联区 >> 主题: golang 编码转换 gbk[转贴]     [回主站]     [分站链接]
golang 编码转换 gbk[转贴]
clq
浏览(493) - 2017-11-12 15:56:43 发表 编辑

关键字: golang

[2017-11-12 16:01:41 最后更新]

golang 编码转换 gbk[转贴]
ziyouzhiqiu · 2015-01-17 16:00:36 · 14410 次点击 · 预计阅读时间 1 分钟 · 29分钟前 开始浏览    
这是一个创建于 2015-01-17 16:00:36 的文章,其中的信息可能已经有所发展或是发生改变。

(一)golang 官方转换包

       go get golang.org/x/text/encoding
       https://godoc.org/golang.org/x/text

注:Go里面内建仅支持UTF8字符串编码,因此如果你用fmt.Printf之类的函数无法正常打印出字符串内容,而只能是一堆乱码!

导入package:

import (

    "bytes"

    "fmt"

    "golang.org/x/text/encoding/simplifiedchinese"

    "golang.org/x/text/transform"

    "io/ioutil"

)

 gbk转换:

    src:="编码转换内容内容"

    data, _ := ioutil.ReadAll(transform.NewReader(bytes.NewReader([]byte(src)), simplifiedchinese.GBK.NewEncoder()))

    fmt.Println(data) //byte

    fmt.Println(string(data))  //打印为乱码


(二)mahonia

导入package:

import (

    "fmt"

    "github.com/mahonia"

)

 gbk转换:

    src:="编码转换内容内容"

    enc := mahonia.NewEncoder("GBK")

    output := enc.ConvertString(src)

    fmt.Println(output)


本文来自:CSDN博客

感谢作者:ziyouzhiqiu

查看原文:golang 编码转换 gbk


clq  2017-11-12 16:01:41 发表 编辑

我自己用的是 code.google.com\p\mahonia,代码类似于

            strbytes, _ := base64.StdEncoding.DecodeString(string(slurp));
            fmt.Printf("Part %q: %q\n", p.Header.Get("Foo"), strbytes);
           
            enc := mahonia.NewDecoder("gbk");
            //return enc.ConvertString(zstr)
            fmt.Println(enc.ConvertString(string(strbytes)));

编译环境 1.7. mahonia 的代码好象不太好下载,源码应该有 3M .



总数:1 页次:1/1 首页 尾页  
总数:1 页次:1/1 首页 尾页  


所在合集/目录



发表评论:
文本/html模式切换 插入图片 文本/html模式切换


附件:



NEWBT官方QQ群1: 276678893
可求档连环画,漫画;询问文本处理大师等软件使用技巧;求档softhub软件下载及使用技巧.
但不可"开车",严禁国家敏感话题,不可求档涉及版权的文档软件.
验证问题说明申请入群原因即可.

Copyright © 2005-2020 clq, All Rights Reserved
版权所有
桂ICP备15002303号-1