zoukankan      html  css  js  c++  java
  • Servlet中使用response对象下载实现

    1,ResponseDownload.java Serlvet实现下载代码:

        import java.io.FileInputStream;  
        import java.io.IOException;  
        import java.io.OutputStream;  
          
        import javax.servlet.ServletException;  
        import javax.servlet.http.HttpServlet;  
        import javax.servlet.http.HttpServletRequest;  
        import javax.servlet.http.HttpServletResponse;  
          
        public class ResponseDownload extends HttpServlet {  
            public void doGet(HttpServletRequest request, HttpServletResponse response)  
                    throws ServletException, IOException {  
                //String realpath = this.getServletContext().getRealPath("/2.jpg");//获得下载图片路径  
                String realpath = this.getServletContext().getRealPath("/图片.jpg");//中文名称文件  
             String filename = realpath.substring(realpath.lastIndexOf("\\") + 1);//截取路径获得下载文件名  
            response.setHeader("content-disposition", "attachment;filename="+URLEncoder.encode(filename, "UTF-8"));//中文名称文件的下载  
             //response.setHeader("content-disposition", "attachment;filename="+filename);//response 响应头响应下载请求  
             FileInputStream in =new FileInputStream(realpath); //将图片文件以流写入  
    int len=0; byte buffer[]=new byte[1024]; OutputStream out = response.getOutputStream();
    while((len=in.read(buffer))>0){ //读取文件模板代码 ,需记住    out.write(buffer, 0, len);
        }
         in.close();
    }  
    public void doPost(HttpServletRequest request, HttpServletResponse response)throws ServletException, IOException {
            doGet(request, response);
      }
    }
  • 相关阅读:
    使用session页面控制登录入口及购物车效果的实现
    php中会话保持 session 与cooker
    php多关键字查询
    php后台编辑关联数据
    php后台增删改跳转
    php登录注册页面及加载
    [bzoj4098] [Usaco2015 Open]Palindromic Paths
    [bzoj1969] [Ahoi2005]LANE 航线规划
    4395: [Usaco2015 dec]Switching on the Lights
    [bzoj2789] [Poi2012]Letters
  • 原文地址:https://www.cnblogs.com/lichone2010/p/3127857.html
Copyright © 2011-2022 走看看