问题描述:
如果你有把曾经的php或者java的老代码用go重写的经验,很可能会遇到gb2312转utf-8的问题
最近有同学在工作有使用到iconv-go这个库,涉及到转换字符的,出现如下报错,然后再咨询我...使用的函数为:
body, err = iconv.ConvertString(body, "GBK", "utf-8")
解决思路:
进去github.com/djimenez/iconv-go点击源码查看...大致意思是说,在"tocode"之后加"//IGNORE",那些不能被tocode显示的字符将会自动被忽略,oh good,正好是我想要的....toEncodingC, fromEncodingC)
我们只需将//IGNORE传递到c库既可支持
所以代码改为:
body, err = iconv.ConvertString(body, "GBK", "utf...重述一下解决方案:
body, err = iconv.ConvertString(body, "GBK", "utf-8//IGNORE")