JSP 下载中文文件名的乱码问题解决

时间:2022-10-30 13:22:25

filename = request.getParameter("filename");
response.setContentType("application/x-download");

String destfilename = URLEncoder.encode(filename, "UTF-8");

response.setHeader("Content-Disposition", "attachment; filename=\"" + destfilename + "\";");

 

需要说明的是,filename 不需要转换成UTF-8的原因是在服务器的 server.xml 的 Connector 节点设定了 URIEncoding 属性为 UTF-8 。见《JSP获取querystring的中文参数值 (2)》。