使用commons.apache.compress向嵌套的zip文件添加条目

时间:2013-02-26 12:08:03

标签: java apache-commons-compress

我的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级放入其中?

1 个答案:

答案 0 :(得分:0)

你必须使用

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

将文件设置为根文件夹和

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

设置为名为"新文件夹"。

的新文件夹