文件名乱码的原因是因为在获取文件名时,使用了不同的字符编码格式。在代码中,使用了ISO-8859-1编码格式获取文件名,而在设置文件名时,使用了UTF-8编码格式。

要解决这个问题,可以尝试以下方法:

  1. 注释掉获取文件名的代码行:将String fileName1 = new String(request.getParameter("fileSuccessName").getBytes("iso-8859-1"), "utf-8");改为// String fileName1 = new String(request.getParameter("fileSuccessName").getBytes("iso-8859-1"), "utf-8");

  2. 将文件名的转码方式改为统一使用UTF-8编码格式:将fileName = URLDecoder.decode(fileName, "UTF-8");改为fileName = new String(fileName.getBytes("ISO-8859-1"), "UTF-8");

尝试以上方法后,再次测试下载功能,应该可以正确显示文件名

RequestMappingvalue = downloadEdiFile method = RequestMethodGET	public void downloadEdiFileHttpServletRequest request HttpServletResponse response throws IOException 		String filenamerel = requestgetP

原文地址: https://www.cveoy.top/t/topic/ivTF 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录