/** * CSV文件生成方法 * @param head表单头 * @param dataList表单内容 * @param outPutPath输出路径 * @param filename表单文件名 * @return */ public static File createCSVFile(List
备注:以上是修正后的代码,正确无误。
原因是导出的csv文件开头缺少BOM (BOM就是这3个字节 :"EF BB BF" ,BOM的全称叫做"Byte Order Mark")字符,导致微软的记事本Word等打开无法识别部分汉字。win平台默认的utf8编码的文本性文件带有BOM,但是java转换流写入的utf8文件不带BOM,所有Java导出的文件不带bom会导致部分汉字乱码。
所以解决办法:加上bom头
byte[] uft8bom={(byte)0xef,(byte)0xbb,(byte)0xbf};
fos.write(uft8bom);
Java导出cvs文件的详细代码请查看:点击此处跳转
参考:https://www./qq2267711589/p/10822682.html