zip文件流

来源:互联网 发布:淘宝刀剑神域武器 编辑:程序博客网 时间:2024/06/06 17:45
处理ZIP文件的类在java.util.zip中而不在java.io中,但还是java.io.FilterInputStream和
java.io.FilterOutputStream的子类。
    ZipInputStream zin = new ZipInputStream(new FileInputStream(zipname));
    ZipEntry entry;
    while ((entry = zin.getNextEntry())!=null)
    {
        analyze entry;
        read the contents of zin;
        zin.colseEntry();
    }
    zin.close;
    读取zip条目的内容,很可能不太愿意使用原始的read方法,通常,会使用更适宜的流过滤器的
    方法。
        BufferedReader in = new BufferedReader(new InputStreamReader(zin));
        String s;
        while ((s = in.readLine()) != null);
当向一个ZIP文件内写入时,需要打开一个构造器中包含的FileOutputStream的ZipOutputStream文件流。
对于每一条希望置入ZIP文件的条目,都要创建一个ZipEntry对象。只要把文件传给ZipEntry构造器,它
将会自动设置其他参数,诸如文件日期和解压方法等。如果愿意,可以覆盖这些设置。随后,可以调用
ZipOutputStream的putNextEntry方法来开始写入一个新文件。将文件传给ZIP流。完成后调用closeEntry。
    代码框架:
    FileOutputStream fout = new FileOutputStream("test.zip");
    ZipOutputStream  zout = new ZipOutputStream(fout);
    for all files
    {
    ZipEntry ze = new ZipEntry(filename);
    zout.putNextEntry(ze);
    send data to zout;
    zout.closeEntry();
    }
    zout.close();
   
原创粉丝点击