嗨,當我試圖解壓縮我的文件,我使用下面的代碼片斷getNextZipEntry爲什麼跳過幾個文件的根目錄?
public static List<String> unZip(File tarFile) throws IOException {
List<String> result = new ArrayList<String>();
InputStream inputStream = new FileInputStream(tarFile);
ZipArchiveInputStream in = new ZipArchiveInputStream(inputStream);
ZipArchiveEntry entry = in.getNextZipEntry();
while (entry != null) {
System.out.println("Entry name ::: "+entry);
if (entry.isDirectory()) {
System.out.println("This entry is a directory ");
entry = in.getNextZipEntry();
continue;
}
result.add(entry.getName());
entry = in.getNextZipEntry();
}
in.close();
return result;
}
我上面的代碼輸出爲
Entry name ::: lib/docssdk.jar
Entry name ::: lib/jackson-annotations-2.7.4.jar
Entry name ::: lib/jackson-core-2.7.4.jar
Entry name ::: lib/jackson-databind-2.7.4.jar
Entry name ::: lib/jsonapi-converter-0.3.jar
Entry name ::: lib/okhttp-3.0.1.jar
Entry name ::: lib/okio-1.7.0.jar
Entry name ::: lib/retrofit-2.0.2.jar
我期待它是作爲
Entry name ::: lib/
Entry name ::: lib/docssdk.jar
Entry name ::: lib/jackson-annotations-2.7.4.jar
Entry name ::: lib/jackson-core-2.7.4.jar
Entry name ::: lib/jackson-databind-2.7.4.jar
Entry name ::: lib/jsonapi-converter-0.3.jar
Entry name ::: lib/okhttp-3.0.1.jar
Entry name ::: lib/okio-1.7.0.jar
Entry name ::: lib/retrofit-2.0.2.jar
根文件夾lib /缺失
我得到預期的OU ut當我解壓縮我的機器中的文件內容並在lib文件夾中再次創建一個zip文件時。
爲什麼我在找到getNextZipEntry
時錯過了我的根文件夾?請在這方面給我建議。
我重視的zip結構的screenshot隨着這個
Original Zip File重現此問題
我想提取之前預覽我的zip文件。爲此我想提取zip文件中的確切文件夾結構。 – lsof