java web 下载文件乱码处理
String name = new StringBuffer().append("班次信息").append(begindate).append("至").append(enddate).append(".xlsx").toString();
String userAgent = req.getHeader("User-Agent");
// name.getBytes("UTF-8")处理safari的乱码问题
byte[] bytes = userAgent.contains("MSIE") ? name.getBytes() : name.getBytes("UTF-8");
// 各浏览器基本都支持ISO编码
name = new String(bytes, "ISO-8859-1");
resp.setCharacterEncoding("UTF-8");
resp.addHeader("Content-type"," application/octet-stream");
resp.addHeader("Content-Disposition",new StringBuffer().append("attachment;filename=").append(name).toString());
ServletOutputStream out = resp.getOutputStream();
try {
book.write(out);
} finally {
out.close();
}