String name = "产品与企业查询.xls";
String userAgent = request.getHeader("User-Agent");
byte[] bytes = userAgent.contains("MSIE") ? name.getBytes() : name.getBytes("UTF-8"); // name.getBytes("UTF-8")处理safari的乱码问题
name = new String(bytes, "ISO-8859-1"); // 各浏览器基本都支持ISO编码
response.setHeader("Content-disposition", String.format("attachment; filename=\"%s\"", name));
response.setHeader("Content-Disposition", "attachment;filename="+name);
response.setCharacterEncoding("utf-8");
response.setContentType("application/OCTET-STREAM;charset=UTF-8");
OutputStream out;
try {
out = response.getOutputStream();
wb.write(out);
out.flush();
out.close();
} catch (Exception e) {
e.printStackTrace();
}
【转】解决safari导出excel中文名称乱码问题
Excel导出设置
最新推荐文章于 2023-01-10 16:38:21 发布
本文介绍了一种使用Java处理Excel文件并正确设置响应头的方法,确保不同浏览器(如IE、Safari等)能正确下载和显示文件名。通过调整字符编码方式解决乱码问题。
7808





