hyljava

          文件下載到本地

          package com.shxt.controller;

          import java.io.File;
          import java.io.FileInputStream;
          import java.io.IOException;
          import java.io.OutputStream;
          import java.io.PrintWriter;
          import java.net.URLEncoder;

          import javax.servlet.ServletException;
          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 {

            this.doPost(request, response);
           }

           public void doPost(HttpServletRequest request, HttpServletResponse response)
             throws ServletException, IOException {

            response.setContentType("application/x-msdownload");
            PrintWriter out = response.getWriter();
            response.reset();// 可以加也可以不加
            response.setContentType("application/x-download");
            String filedownload = request.getRealPath("/images")
              + "\\02_開發第一個無狀態會話bean.avi";// "想辦法找到要提供下載的文件的物理路徑+文件名";
            System.out.print(filedownload);
            String filedisplay = "okokok.avi";// "給用戶提供的下載文件名";
            filedisplay = URLEncoder.encode(filedisplay, "UTF-8");
            response.addHeader("Content-Disposition", "attachment;filename="
              + filedisplay);
            

            OutputStream outp = null;
            FileInputStream in = null;
            try {
             outp = response.getOutputStream();
             // 你可以指定你的ftp輸入流
             in = new FileInputStream(new File(filedownload));

             byte[] b = new byte[1024];
             int i = 0;

             while ((i = in.read(b)) > 0) {
              outp.write(b, 0, i);
             }
             outp.flush();
            } catch (Exception e) {
             System.out.println("Error!");
             e.printStackTrace();
            } finally {
             if (in != null) {
              in.close();
              in = null;
             }
             if (outp != null) {
              outp.close();
              outp = null;
             }
             //out.clear();
             //out = pageContext.pushBody();
            }
           }

          }

          posted on 2013-11-23 20:51 何云隆 閱讀(924) 評論(1)  編輯  收藏 所屬分類: Jsp

          評論

          # re: 文件下載到本地[未登錄] 2015-08-11 15:17 1

          1  回復  更多評論   

          主站蜘蛛池模板: 黔东| 建昌县| 博罗县| 娱乐| 武强县| 新宾| 临沭县| 鲁山县| 石首市| 乐平市| 临安市| 台安县| 建昌县| 通榆县| 繁峙县| 鹿泉市| 平塘县| 鸡西市| 崇文区| 丹江口市| 盐山县| 长顺县| 禹城市| 仁化县| 北宁市| 锦州市| 尉氏县| 霍城县| 平定县| 广东省| 都昌县| 武汉市| 澄江县| 疏勒县| 清苑县| 故城县| 亚东县| 上思县| 常德市| 龙岩市| 固阳县|