下载中文名处理

WEB服务下载文件用这种方法处理:

fileHeader = new String(fileHeader.getBytes("UTF-8"), "ISO-8859-1");

response.setHeader("Content-disposition", "attachment;filename="
    + fileHeader);

in = new BufferedInputStream(new FileInputStream(new File(url
     + fileName)));
   while ((bytesRead = in.read(buf)) != -1) {
    response.getOutputStream().write(buf, 0, bytesRead);
   }

 

只有在IE9和火狐下不乱码,在其他浏览器下都乱码。

改为下面的方法就正确了:

fileHeader = URLEncoder.encode(fileHeader, "UTF-8");

 

 

你可能感兴趣的:(下载中文名处理)