java页面导出csv格式乱码问题解决
来源:互联网 发布:塞德里克·维拉尼 知乎 编辑:程序博客网 时间:2024/05/16 17:46
问题描述:java页面导出的csv格式的表格,用excel打开有乱码,但是用记事本打开没有乱码能够正常显示。
问题代码:
ServletActionContext.getResponse().reset();// 清空输出流 ServletActionContext.getResponse().setHeader( "Content-disposition", "attachment; filename=" + Common.DateFormat(new Date(), "yyyy-MM-dd HH:mm:ss") + "ChannelIndicator.csv");// 设定输出文件头 ServletActionContext.getResponse().setContentType("application/csv");// 定义输出类型 HttpServletResponse response = ServletActionContext.getResponse(); // 设置字符集 response.setContentType("text/plain");// 设置输出为文字流 response.setCharacterEncoding("UTF-8"); PrintWriter pw = null; try { pw = response.getWriter(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }
问题原因:excel默认按平台默认的字符集ANSI打开文件,也就是说在windows平台上excel默认用gb2312打开文件,所以出现了之前的问题。知道问题原因更改就比较容易啦。修改后的代码:
ServletActionContext.getResponse().reset();// 清空输出流 ServletActionContext.getResponse().setHeader( "Content-disposition", "attachment; filename=" + Common.DateFormat(new Date(), "yyyy-MM-dd HH:mm:ss") + "ChannelIndicator.csv");// 设定输出文件头 ServletActionContext.getResponse().setContentType("application/csv");// 定义输出类型 // 在windows平台上导出的csv用excel导出是乱码,需要把字符集设置为gb2312 HttpServletResponse response = ServletActionContext.getResponse(); // 设置字符集 response.setContentType("text/plain");// 设置输出为文字流 response.setCharacterEncoding("gb2312"); PrintWriter pw = null; try { pw = response.getWriter(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); }
0 0
- java页面导出csv格式乱码问题解决
- birt导出csv乱码问题解决
- java web导出csv文件中文乱码问题解决。
- java web导出csv文件中文乱码问题解决
- 导出CSV文件,中文乱码,使用“GB2312”格式导出
- Java导出csv文件乱码的解决方法
- java代码实现导出CSV格式
- [MySQL Help]MySQL Workbench用csv格式导出数据乱码
- [MySQL Help]MySQL Workbench用csv格式导出数据乱码
- PLSQL导出CSV格式后中文为乱码的解决方法
- 从页面导出报表,以CSV, doc,pdf格式
- bugzilla 导出csv乱码
- workbench 导出csv乱码
- java导出功能(根据查询条件导出.csv格式)
- Java中文乱码——5、CSV导出乱码
- 导出CSV格式
- 数据库文件导出csv格式
- 导出csv 格式
- 语音识别系统之htk----安装
- 第18周acm
- 理工大学ACM平台题答案关于C语言 1131 C/C++经典程序训练1---最大公约数与最小公倍数
- Android-----WebView使用
- int转string、wstring类型
- java页面导出csv格式乱码问题解决
- SVN有任何胜过git的地方吗?
- 小写字母转换成大写字母
- 必须得说一下,子类关于从父类继承过来的private成员这点事儿
- 算法之分治法小结
- CF209 Div2 (D) 找最长的连续子序列拥有相同的最大公约数,并且最大公约数是这个序列中的一个数-------左右延伸的方法
- 淘宝网店装修常用代码大全
- C++中的显示转换总结
- 理工大学ACM平台题答案关于C语言 1145 面向对象程序设计上机练习六(类和对象)