5

我正在处理数字文档和数字签名,我偶然发现了一个问题。

输入:documentX.adoc - 包含文件和文件夹的 zip 文件。

我需要获取输入文件中的所有内容——目录和文件的列表。

我该怎么办:

ZipFile adocFile = new ZipFile(documentXFileName);
ArrayList <String> adocFiles = new ArrayList<String>();
Enumeration <? extends ZipEntry> entries;
entries = adocFile.entries();
for (entries = adocFile.entries(); entries.hasMoreElements();)
{
    adocFiles.add(entries.nextElement().getName());
}

我尝试创建 ArrayList < ZipEntry > 并添加 ZipEntries 而不是名称 - 仍然没有。也许还有其他方法?奇怪的是,ZipEntry 有一个 .isDirectory() 方法......

谢谢你的帮助,马丁

4

1 回答 1

11

文档中:

目录条目被定义为名称以“/”结尾的条目。

不必将目录存储在 ZIP 文件中 - 它们是可选条目。可以使用路径存储字节序列,foo/bar.txt而无需名为foo. Zip 工具可能会提供这样的错觉,即这些东西存在于存档中,即使它们不存在。

于 2010-11-18T14:59:52.760 回答