您好,欢迎访问一九零五行业门户网

java怎么解决导出csv文件乱码

将查询的数据以xls文件导出时(utf-8编码),数据正常;但以csv文件导出时,文件中的中文乱码,同样是utf-8编码,改成gbk编码导出时,中文显示正常。(推荐:java视频教程)
解决方法:
以csv方式导出的文件中默认不含bom信息,通过给将要输出的内容设置bom标识(以 ef bb bf 开头的字节流)即可解决该问题。具体方法如下:
...outputstreamwriter outputstreamwriter = new outputstreamwriter(response.getoutputstream(), "utf-8"); // 要输出的内容 result = (string)contentmap.get(response_result); response.setheader("content-disposition", "attachment;filename=test.csv"); outputstreamwriter.write(new string(new byte[]{(byte) 0xef, (byte) 0xbb, (byte) 0xbf})); outputstreamwriter.write(result); outputstreamwriter.flush();
如果是以outputstream流实现的 ,参数可以按如下修改:
out = response.getoutputstream(); //加上utf-8文件的标识字符 out.write(new byte []{(byte) 0xef, (byte) 0xbb, (byte) 0xbf});
更多java知识请关注java基础教程栏目。
以上就是java怎么解决导出csv文件乱码的详细内容。
其它类似信息

推荐信息