golang导出csv乱码解决方法

可可脂的 · · 984 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

golang导出csv乱码解决方法:

在csv文件的开头写入 UTF-8 BOM

`// 创建文件`

`dstf, err := os.Create(``"./data/"` `+ fileName)`

`defer dstf.Close()`

`if` `err != nil {`

`beego.Error(``"create file error: "` `+ err.Error())`

`return` `""``, err`

`}`

`dstf.WriteString(``"\xEF\xBB\xBF"``)` `// 写入UTF-8 BOM,防止中文乱码`

`// 写数据到文件`

`w := csv.NewWriter(dstf)`

`w.Write([]string{``"开始时间:"``, model.StartTime})`

`w.Write([]string{``"结束时间:"``, model.EndTime})`

`w.Write([]string{``"编号"``,` `"优惠卷名称"``,` `"优惠卷编号"``,` `"优惠卷类型"``,` `"优惠卷面值"``,` `"核销日期"``})`

WriteString:

WriteString["file","string"]

把 "string" 写入文件.

WriteString[channel,"string"]

把 "string" 写入流或进程.

WriteString[channel,expr1,expr2,…]

把 expri 转换为串,然后以序列形式把它们写到指定的输出通道.


有疑问加站长微信联系(非本文作者)

本文来自:Segmentfault

感谢作者:可可脂的

查看原文:golang导出csv乱码解决方法

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

984 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传