通过为超链接指定参数的形式传递的文件名,默认情况下,采用的是ISO-8859-1,而该编码不支持中文,所以传递的文件名将不能被正确读取。因此,在下载带中文文件名的文件时,如果不对文件名进行编码处理,将会产生“系统找不到指定的文件”的异常信息。
解决办法:
在获取中文文件名是,对其进行转码,即将ISO-8859-1编码转换为GBK编码。具体如下:
解决办法:
在获取中文文件名是,对其进行转码,即将ISO-8859-1编码转换为GBK编码。具体如下:
String url = request.getParameter("url");//获取文件上传的路径
url = new String(url.getBytes("ISO-8859-1"),"GBK");对获取的文件名进行转码