码迷,mamicode.com
首页 > 其他好文 > 详细

Servlet:浏览器下载文件时文件名为乱码问题

时间:2019-10-20 15:51:27      阅读:103      评论:0      收藏:0      [点我收藏+]

标签:int   mamicode   image   tput   color   request   protect   下载文件   tac   

技术图片

 1 protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {
 2         String filename = request.getParameter("filename");
 3         System.out.println(filename);
 4         String path = getServletContext().getRealPath("download/"+filename);
 5         // 将下载的文件设置成utf8编码(必须先找到文件真实路径path,再进行UTF8编码,否则服务器端找不到utf8编码后的文件名)
 6         filename = URLEncoder.encode(filename,"UTF-8");
 7         // 设置响应头,控制浏览器下载该文件
 8         response.setHeader("Content-disposition", "attachment;filename="+filename);
 9 
10         InputStream is = new FileInputStream(path);
11         OutputStream os = response.getOutputStream();
12         int len = 0;
13         byte[] buffer = new byte[1024];
14         while((len = is.read(buffer)) != -1) {
15             os.write(buffer,0,len);
16         }
17         os.close();
18         is.close();
19     }

 

Servlet:浏览器下载文件时文件名为乱码问题

标签:int   mamicode   image   tput   color   request   protect   下载文件   tac   

原文地址:https://www.cnblogs.com/ayeex/p/11707612.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!