java下载文件时文件名出现乱码的解决办法

时间:2023-03-08 19:54:54
java下载文件时文件名出现乱码的解决办法

转:

java下载文件时文件名出现乱码的解决办法

2018年01月12日 15:43:32 橙子橙 阅读数:6249

java下载文件时文件名出现乱码的解决办法:

  1. String userAgent = request.getHeader("User-Agent");
  2. String formFileName = file.getFileName();
  3. // 针对IE或者以IE为内核的浏览器:
  4. if (userAgent.contains("MSIE") || userAgent.contains("Trident")) {
  5. formFileName = java.net.URLEncoder.encode(formFileName, "UTF-8");
  6. } else {
  7. // 非IE浏览器的处理:
  8. formFileName = new String(formFileName.getBytes("UTF-8"), "ISO-8859-1");
  9. }
  10. response.setHeader("Content-disposition",String.format("attachment; filename=\"%s\"", formFileName));
  11. response.setContentType("multipart/form-data");