1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 |
/* Determine if the Zip Entry Is Directory Example This Java example shows how to determine if the entry is directory of a file using isDirectory method of Java ZipEntry class. */ import java.io.IOException; import java.util.Enumeration; import java.util.zip.ZipEntry; import java.util.zip.ZipFile; public class DetermineDirectory { public static void main(String args[]) { try { /* * To Open a zip file, use * * ZipFile(String fileName) * constructor of the ZipFile class. * * This constructor throws IOException for any I/O error. */ ZipFile zipFile = new ZipFile("c:/FileIO/WebFiles.zip"); /* * Get list of zip entries using entries method of * ZipFile class. */ Enumeration e = zipFile.entries(); System.out.print("File Name"); System.out.print("ttttIs Directory"); System.out.print("n---------------------------------n"); while(e.hasMoreElements()) { ZipEntry entry = (ZipEntry)e.nextElement(); /* * To determine if the entry is a directory, use * * boolean isDirectory() * method of Java ZipEntry class. * * This method returns true is the entry is directory, * false otherwise. * * Typically, directory entry is the one which contains * "/" at the end. */ String entryName = entry.getName(); boolean isDir = entry.isDirectory(); System.out.print(entryName); System.out.print("tttt" + isDir); System.out.print("n"); } /* * close the opened zip file using, * void close() * method. */ zipFile.close(); } catch(IOException ioe) { System.out.println("Error opening zip file" + ioe); } } } /* Output of this program would be File Name Is Directory --------------------------------- css/datagrid.css false css/graph.css false jsps/Masthead.jspf false jsps/Welcome.jsp false */ |
I have a problem with this. When I have a folder in a folder (test/testy/) the getName() method only returns test/testy (without “/”) and isDirectory also doesn’t work it returns false.