用java写的一个压缩程序

import java.io.*;
import java.util.zip.*;
import java.util.Enumeration;

public class ZipCompress
 {
  public static void main(String[] args) throws IOException
   {
    // TODO 自动生成方法存根
    if (args.length < 1)
     {
      System.out.println("Usage:/n" +
        "java ZipCompress filename1 filename2 .....");
      System.exit(1);
     }
     
    FileOutputStream fos = new FileOutputStream("test.zip");
    CheckedOutputStream csum = new CheckedOutputStream(fos,new CRC32());
    ZipOutputStream zos = new ZipOutputStream(csum);
    BufferedOutputStream bos = new BufferedOutputStream(zos);
    
    zos.setComment("It's a java zip program.");
    
    for (int i =0;i<args.length;i++)
     {
      System.out.println("Writing file " + args[i]);
      BufferedReader in = new BufferedReader(new FileReader(args[i]));
      zos.putNextEntry(new ZipEntry(args[i]));
      int c;
      while ((c=in.read()) != -1)
       bos.write(c);
      in.close();
     }
    bos.close();
    
    System.out.println("CheckSum" + csum.getChecksum().getValue());
    
    System.out.println("Reading and Extracting File");
    FileInputStream fis = new FileInputStream("test.zip");
    CheckedInputStream cis = new CheckedInputStream(fis,new CRC32());
    ZipInputStream zis = new ZipInputStream(cis);
    BufferedInputStream bis = new BufferedInputStream(zis);
    ZipEntry ze;
    
    while ((ze = zis.getNextEntry()) != null)
     {
      System.out.println("Reading file " + ze);
      int s;
      while ((s = bis.read()) != -1)
       System.out.print(s);
     }
    System.out.println("/nCheckSum" + csum.getChecksum().getValue());
    bis.close();
    
    ZipFile zf = new ZipFile("test.zip");
    Enumeration e = zf.entries();
    while (e.hasMoreElements())
     {
      System.out.println("file " + e.nextElement());
     }
   }

 } 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值