HttpServletResponse 下载文件名为中文的问题

2018-06-18 03:06:26来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

/**
* 导出Excel
* @param request
* @return
*/
@RequestMapping("/excelJobFairInfo.do")
@ResponseBody
public void excelJobFairInfo(HttpServletRequest request, HttpServletResponse response) throws Exception {
String salaryDate = "招聘会列表";
if(salaryDate!=""){
response.reset(); //清除buffer缓存
Map<String,Object> map=new HashMap<String,Object>();
// 指定下载的文件名

//URLEncoder.encode(salaryDate, "UTF-8") 解决中文名问题 主要这行代码 火狐浏览器不兼容
     //new String(salaryDate.getBytes(),"iso-8859-1") 改成这样,解决
    response.setHeader("Content-Disposition", "attachment;filename="+new String(salaryDate.getBytes(),"iso-8859-1")+".xlsx");
        response.setContentType("application/vnd.ms-excel;charset=UTF-8");
response.setHeader("Pragma", "no-cache");
response.setHeader("Cache-Control", "no-cache");
response.setDateHeader("Expires", 0);
XSSFWorkbook workbook=null;
//导出Excel对象
workbook = jobFairInfoService.excelJobFairInfo(salaryDate);
OutputStream output;
try {
output = response.getOutputStream();
BufferedOutputStream bufferedOutPut = new BufferedOutputStream(output);
workbook.write(bufferedOutPut);
bufferedOutPut.flush();
bufferedOutPut.close();
} catch (IOException e) {
e.printStackTrace();
}
}

}

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Spring学习之旅(六)Spring AOP工作原理初探

下一篇:Java软件工程师技能图谱