根据需求做一个csv报表数据导入入库功能,运行多天突然运维告知导入数据有问题,有问题那就排查呗。。。
创新互联建站自2013年起,是专业互联网技术服务公司,拥有项目成都网站设计、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元泽州做网站,已为上家服务,为泽州各地企业和个人服务,联系电话:18982081108
题外话:这个问题足足浪费了我2天时间,期间还出了其他的一些问题着实让我抓狂,另外这篇文章希望能帮到你,不要在采坑了!!!
说在前面,这个csv表格数据是有中文的。ok继续
通过日志打点发现了以下错误
找了一圈,着实头痛,我也知道中文需要做处理转化这个我已经做了,并且已经明确是utf-8了通过标准库方法进行判断的还是报错。着实让我摸不着头脑。判断utf-8方法如下
ok,最后借助了百度,google找了一大圈功夫不负有心人,最后发现utf-8还有 utf-8 bom 这种编码格式,我想骂娘。。。至于编码规则啥的就不详细说了,有兴趣自行百度吧。
解决方案如下:
至于其他编码方式以及转换可以查看golang官方扩展库 golang.org/x/text/encoding 库中的源码。
一个用golang的无名小卒
完~
没做转码吧?初步怀疑是这个问题,你尝试下UTF8与GBK之间转下码,应该就可以了
1.先把要导入的包go build - go install
2.接着在要导入的方法中以: 项目名 / 导入的文件名 的形式导入即可(如下方test(项目名) / chiid(文件名))
是。Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言,Go读取CSV文件,其内容都被转换成字符串数组。