美文网首页
使用Servlet实现下载文件的功能

使用Servlet实现下载文件的功能

作者: 布拉德皮蛋_qzy | 来源:发表于2017-08-16 21:46 被阅读0次
    import java.io.File;  
    import java.io.FileInputStream;  
    import java.io.IOException; 
    import java.net.URLEncoder;    
    import javax.servlet.ServletException; 
    import javax.servlet.ServletOutputStream; 
    import javax.servlet.http.HttpServlet;  
    import javax.servlet.http.HttpServletRequest;  
    import javax.servlet.http.HttpServletResponse;    
              public class DownLoadServlet extends HttpServlet {              
                     
                      public void doGet(HttpServletRequest request, HttpServletResponse response)              
                                    throws ServletException, IOException {          
                                    doPost(request,response);      
                                    }              
                      public void doPost(HttpServletRequest request, HttpServletResponse response)              
                                    throws ServletException, IOException {          
                                    //处理请求          
                                    //读取要下载的文件          
                                    File f = new File("E:/好久不见.mp3");          
                                    if(f.exists()){              
                                      FileInputStream  fis = new FileInputStream(f);              
                                      String filename=URLEncoder.encode(f.getName(),"utf-8"); //解决中文文件名下载后乱码的问题              
                                      byte[] b = new byte[fis.available()];              
                                      fis.read(b);             
                                      response.setCharacterEncoding("utf-8");              
                                      response.setHeader("Content-Disposition","attachment; filename="+filename+"");                       //获取响应报文输出流对象              
                                        ServletOutputStream  out =response.getOutputStream();              //输出              
                                        out.write(b);              
                                        out.flush();              
                                        out.close();          
                                        }                  
                                  }         
                      }    
    }
    

    相关文章

      网友评论

          本文标题:使用Servlet实现下载文件的功能

          本文链接:https://www.haomeiwen.com/subject/sdywrxtx.html