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);
      }
    }
  • 相关阅读:
    org.json里实现XML和JSON之间对象互转
    Rhino-- JavaScript
    XStream -- a simple library to serialize objects to XML and back again
    [Groovy]转:Groovy 通过 isCase 方法进行分类
    [Groovy]static typing
    JavaScript Succinctly 读后笔记
    [Groovy] Private fields and methods are not private in groovy
    Android 学习之路和App开发框架
    Android自定义xml解析
    Android 动态生成对话框和EditText
  • 原文地址:https://www.cnblogs.com/lichone2010/p/3127857.html
Copyright © 2011-2022 走看看