1

我的 Zip 文件结构是这样的:

t1.zip --> t2.zip --> sample.txt

我想替换sample.txt。如果它是一个级别,我能够做到。请帮助我处理多级嵌套 zip 文件。

我的示例代码

ZipFile zipFile = new ZipFile(new File("t1.zip");
ZipArchiveEntry ze = zipFile.getEntry("t2.zip"); // So It works fine

我试过了

ZipArchiveEntry ze = zipFile.getEntry("t2.zip/sample.txt"); // returns null

我的意图是遵循apache文档页面中的示例

ZipArchiveEntry entry = new ZipArchiveEntry(new File("sample.txt")); // Should I t2.zip/sample.txt ?
entry.setSize(size);
zipOutput.putArchiveEntry(entry);
zipOutput.write(contentOfEntry);
zipOutput.closeArchiveEntry();

但我不清楚,如何将存档条目 2 级别放在里面?

4

1 回答 1

-1

你必须使用

new ZipArchiveEntry(new File("sample.txt"), "sample.txt");

将文件设置到根文件夹中,然后

new ZipArchiveEntry(new File("sample.txt"), "new folder/sample.txt");

设置到一个名为“新文件夹”的新文件夹中。

于 2014-03-19T11:48:55.820 回答