Java里面生成csv文件以后,用文本工具打开很正常,没有问题;但是用excel打开会乱码,经过搜索知道,需要在csv加入bom信息,让excel能识别,并且可以根据逗号自动填充单元格。
代码如下:
try {
FileOutputStream fos = new FileOutputStream("E:\\test.csv", false);
//在csv加上bom信息,防止excel打开csv会乱码
byte[] uft8bom={(byte)0xef,(byte)0xbb,(byte)0xbf};
fos.write(uft8bom);
OutputStreamWriter osw = new OutputStreamWriter(fos, "utf-8");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}