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 转换为串,然后以序列形式把它们写到指定的输出通道.
有疑问加站长微信联系(非本文作者)