java 写csv文件,以UTF-8编码输出的时候,文本文件或者notepad++ 打开的时候是正常显示的,但是使用excel打开的时候中文却是乱码。
原因是excel是以ANSI方式打开csv的。
在写文件时先写BOM即可:
//添加文件头,否则excel打开会乱码
try( FileOutputStream fos = new FileOutputStream(rstFilePath)) {
//追加BOM标识
fos.write(0xef);
fos.write(0xbb);
fos.write(0xbf);
}
catch (Exception e){
log.error("Write file head error: ",e);
return;
}
Original: https://www.cnblogs.com/sixiweb/p/14283467.html
Author: 四喜
Title: 解决java以UTF-8输出中文时,excel打开乱码但是记事本打开却正常的问题。
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/539266/
转载文章受原作者版权保护。转载请注明原作者出处!