【Excel】java 导出Excel 中文文件名乱码不显示问题

来源:互联网 发布:韩国拍照软件 编辑:程序博客网 时间:2024/05/16 14:11

    在使用Java 导出Excel 等报表时,对于中文文件名,会出现不显示中文或者中午乱码的问题。此问题的解决方案比较简单,将要返回的中文文件名做iso-8859-1 转码即可。


【问题写法】

      


【正确方式: 推荐方式】

    推荐在导出文件时,指定返回内容编码,并对文件名进行转码

response.setContentType("application/octet-stream;charset=utf-8");response.setHeader("Content-Disposition", "attachment;filename="+ new String(fileName.getBytes(),"iso-8859-1") + ".xls");

   


【PS:  Spring 导出Excel 技巧】

    Spring 中提供了 AbstractExcelView(org.springframework.web.servlet.view.document.AbstractExcelView) 视图,我们只需继承这个抽象类,然后重写里面的方法即可。

然后我们就可以在controller 方法中,直接返回这个对象就行了。可以使用类似方式:return new ModelAndView(multiSheetsObjectExcelView, dataMap);


2 0