u1timate
Published on 2025-01-21 / 16 Visits
0

golang csv中文字符乱码

使用golang生成csv文件时,如果内容中包含中文字符,则会出现乱码的情况。

  • 解决方法

buf := bufio.NewWriter(ctx.Writer)
//修复中文乱码问题
buf.Write([]byte{0xEF, 0xBB, 0xBF})
csvWriter := csv.NewWriter(buf)

为了确保文本文件被正确识别为 UTF-8 编码,可以在文件的开头写入一个字节顺序标记(BOM,Byte Order Mark)。在 UTF-8 中,BOM 是三个字节:0xEF, 0xBB, 0xBF。通过这种方式,文件或输出流的编码被明确标识为 UTF-8,从而避免了中文字符显示为乱码的问题。