Tag: truezip

TrueZip – 如何解压缩内部jar / zip文件而不将它们扩展为目录?

我正在使用TrueZip 7创建一个tzp文件,并使用cp_rp方法将所有目录内容一次性添加到tzp文件中。 之后,我正在尝试将tzp文件的所有内容提取到目标目录。 但是,电话: zipFile = new TFile(“test.zip”); public void extract(TFile file){ for (TFile iFile : zipFile.listFiles()){ if(iFile.isDirectory()){ extract(iFile); }else{ File output = new File(iFile.getPath()); iFile.mv(output); } } } 失败并显示错误: java.io.IOException:[path] \ test.zip \ Myjar.jar(目标已存在) 。 如果我使用cp而不是mv,那么错误是[path] \ test.zip \ Myjar.jar(包含在[path] \ test.zip \ Myjar.jar中) 问题似乎也是TrueZip将zip和jar识别为目录和档案,所以当对它们执行isDirectory()时,这会成功,并且执行listFiles()会返回其中包含的所有文件,因此运行cp()on文件递归导致所有jar / zip内容被复制为目录。 提取这些存档文件而不扩展它们的正确方法是什么?

如何使用TrueZip获取存档中文件的大小?

根据TrueZip文档,似乎length()方法返回0或-1。 我正在更新WAR存档,我只想更新长度已更改的文件。 怎么能实现这一目标? 提前致谢, 马丁