繼續關注我的C語言學習博客

          林臨的地盤

          java學習博客
          posts - 44, comments - 28, trackbacks - 0, articles - 0
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          使用jzip做打包下載

          Posted on 2009-10-22 14:30 lubaolin 閱讀(718) 評論(0)  編輯  收藏 所屬分類: java

          import java.io.File;
          import java.io.FileInputStream;
          import java.io.IOException;
          import java.util.Date;

          import javax.servlet.ServletException;
          import javax.servlet.http.HttpServlet;
          import javax.servlet.http.HttpServletRequest;
          import javax.servlet.http.HttpServletResponse;

          import net.sf.jazzlib.ZipEntry;
          import net.sf.jazzlib.ZipOutputStream;

          public class BatchDownload extends HttpServlet {

           public BatchDownload() {
            super();
           }

           public void doGet(HttpServletRequest request, HttpServletResponse response)
             throws ServletException, IOException {
            response.setContentType("APPLICATION/OCTET-STREAM");
            response.setHeader("Content-Disposition","attachment; filename="+this.getZipFilename());
            System.out.println("in BatchDownload................");
            ZipOutputStream zos = new ZipOutputStream(response.getOutputStream());  
               File[] files = new File[2];
               files[0]=new File("c:/zip/文件A.doc");
               files[1]=new File("c:/zip/文件B.doc");
               zipFile(files, "", zos);  
               zos.flush();  
               zos.close();  

           }
           private void zipFile(File[] subs, String baseName, ZipOutputStream zos) throws IOException {    
                for (int i=0;i<subs.length;i++) {
                 File f=subs[i];
                 zos.putNextEntry(new ZipEntry(baseName + f.getName()));  
                 FileInputStream fis = new FileInputStream(f);  
                 byte[] buffer = new byte[1024];  
                 int r = 0;  
                 while ((r = fis.read(buffer)) != -1) {  
                     zos.write(buffer, 0, r);  
                 }  
                 fis.close();
                }
           }
           private String getZipFilename(){
            Date date=new Date();
            String s=date.getTime()+".zip";
            return s;
           }

           public void doPost(HttpServletRequest request, HttpServletResponse response)
             throws ServletException, IOException {
            this.doGet(request, response);
           }
          }
          繼續關注我的C語言學習博客
          主站蜘蛛池模板: 丹凤县| 湘阴县| 策勒县| 莒南县| 和政县| 东乡| 海阳市| 吴川市| 贺兰县| 梨树县| 武义县| 浮梁县| 明溪县| 莱芜市| 菏泽市| 邵武市| 七台河市| 屏南县| 白城市| 华亭县| 贵南县| 湟源县| 金门县| 浮山县| 布尔津县| 宜黄县| 海原县| 高密市| 子长县| 上饶市| 堆龙德庆县| 竹溪县| 吴堡县| 巴楚县| 梨树县| 图片| 太白县| 嘉峪关市| 读书| 晋中市| 榆社县|