zxs19861202 发表于 2013-2-3 14:15:58

java压缩文件的代码

import java.io.File;
http://www.blogjava.net/Images/OutliningIndicators/None.gifimport org.apache.tools.zip.ZipOutputStream; //这个包在ant.jar里,要到官方网下载
http://www.blogjava.net/Images/OutliningIndicators/None.gifimport java.io.FileInputStream;
http://www.blogjava.net/Images/OutliningIndicators/None.gifimport java.io.FileOutputStream;
http://www.blogjava.net/Images/OutliningIndicators/None.gifimport java.util.zip.ZipInputStream;
http://www.blogjava.net/Images/OutliningIndicators/None.gifimport java.util.zip.ZipEntry;
http://www.blogjava.net/Images/OutliningIndicators/None.gif
http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedBlock.gifpublic class CompressBook http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif    public CompressBook() http://www.blogjava.net/Images/dot.gif{}
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif    /**//*
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif    * inputFileName 输入一个文件夹
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif    * zipFileName 输出一个压缩文件夹
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif    */
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif    public void zip(String inputFileName) throws Exception http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        String zipFileName = "c:\\test.zip"; //打包后文件名字
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        System.out.println(zipFileName);
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        zip(zipFileName, new File(inputFileName));
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif    }
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif    private void zip(String zipFileName, File inputFile) throws Exception http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        ZipOutputStream out = new ZipOutputStream(new FileOutputStream(zipFileName));
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        zip(out, inputFile, "");
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        System.out.println("zip done");
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        out.close();
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif    }
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif    private void zip(ZipOutputStream out, File f, String base) throws Exception http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif        if (f.isDirectory()) http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           File[] fl = f.listFiles();
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           out.putNextEntry(new ZipEntry(base + "/"));
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           base = base.length() == 0 ? "" : base + "/";
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif           for (int i = 0; i < fl.length; i++) http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           zip(out, fl, base + fl.getName());
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif         }
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif        }else http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           out.putNextEntry(new ZipEntry(base));
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           FileInputStream in = new FileInputStream(f);
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           int b;
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           System.out.println(base);
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif           while ( (b = in.read()) != -1) http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif            out.write(b);
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif         }
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif         in.close();
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif       }
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif    }
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif    public static void main(String [] temp)http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif        CompressBook book = new CompressBook();
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif        try http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           book.zip("c:\\c");//你要压缩的文件夹
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockStart.gifhttp://www.blogjava.net/Images/OutliningIndicators/ContractedSubBlock.gif        }catch (Exception ex) http://www.blogjava.net/Images/dot.gif{
http://www.blogjava.net/Images/OutliningIndicators/InBlock.gif           ex.printStackTrace();
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif       }
http://www.blogjava.net/Images/OutliningIndicators/ExpandedSubBlockEnd.gif    }
http://www.blogjava.net/Images/OutliningIndicators/ExpandedBlockEnd.gif}
页: [1]
查看完整版本: java压缩文件的代码