java导出excel文件名称乱码问题解决
用下面这种方式,ie,chrome没问题,但是safari有问题
private static OutputStream getOutputStream(String fileName, HttpServletResponse response) throws Exception {
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setCharacterEncoding("utf8");
response.setHeader("Content-Disposition","attachment;filename="+fileName+".xlsx");
response.addHeader("Access-Control-Expose-Headers","Content-disposition");
return response.getOutputStream();
}
用下面这种方式在ie,chrome,safari浏览器下都是ok的,中文名称都能正常显示:
private static OutputStream getOutputStream(String fileName, HttpServletResponse response) throws Exception {
fileName = URLEncoder.encode(fileName, "UTF-8");
response.setContentType("application/x-msdownload");
response.setCharacterEncoding("iso-8859-1");
response.setHeader("Content-Disposition", "attachment;filename*=UTF-8''" + fileName+".xlsx");
response.addHeader("Access-Control-Expose-Headers","Content-disposition");
return response.getOutputStream();
}
发表评论 (审核通过后显示评论):