现我有一个.zip文件,文件结构是一个文件夹下面有三个文件。我用org.apache.tools.zip.zipEntry 偏历这个.zip文件。可它历偏zip文件的顺序是先读出了文件,后才读文件夹。问又什么方法可以先读文件夹,后读文件的?

解决方案 »

  1.   

    刚做了一下测试
    在D盘根目录弄了个zip.zip
    里面包括
    zip/zip/aadirectory/zip/filedirectory/zip/filedirectory/file.txtzip/filedirectory/file2.txtzip/fileroot.txt
    import java.io.*;
    import java.util.zip.*;
    import java.util.*;public class TestZip{
    public static void main(String [] args){
    try {
          ZipFile zipfile = new ZipFile("/zip.zip");
          ZipEntry zipentry;
          Hashtable htSizes = new Hashtable();
          for (Enumeration enumeration = zipfile.entries();
               enumeration.hasMoreElements();){
            zipentry = (ZipEntry) enumeration.nextElement();
            System.out.println(zipentry.getName());
          }
          zipfile.close();
          
        }
        catch (Exception e) {    }
    }
    }然后打印结果。就是:zip/zip/aadirectory/zip/filedirectory/zip/filedirectory/file.txtzip/filedirectory/file2.txtzip/fileroot.txt先读的文件夹,后读的文件。呵呵。