我如何能够提取存储在任何jar文件中的子文件夹中的所有文件夹,子文件夹,所有文件和文件以及文件夹,并将这些内容opy放入java中的目标文件夹中,同时在eclipse平台中进行编码.... ..... 任何人都可以建议我...... 我尝试了许多与zipinput流相关的代码。在enumeretion中存储zipfile实体并将其写入detination文件夹。但没有一个正常......
答案 0 :(得分:0)
答案 1 :(得分:0)
如果您想要基于Eclipse的解决方案,请选择
File menu > Import ... > General > Archive File
但是如果你想要一个Java代码解决方案,这里有一个使用Guava:
public static void unpackZipFile(final File archive, final File targetDirectory)
throws ZipException, IOException {
ZipFile zipFile = new ZipFile(archive);
Enumeration<? extends ZipEntry> entries = zipFile.entries();
while (entries.hasMoreElements()) {
final ZipEntry zipEntry = entries.nextElement();
if (zipEntry.isDirectory())
continue;
final File targetFile = new File(targetDirectory,
zipEntry.getName());
Files.createParentDirs(targetFile);
ByteStreams.copy(zipFile.getInputStream(zipEntry), Files
.newOutputStreamSupplier(targetFile).getOutput());
}
}
答案 2 :(得分:0)
我写了一个助手类来做到这一点:
http://softsmithy.sourceforge.net/lib/docs/api/org/softsmithy/lib/util/zip/ZipFiles.html
您可以在我的博客中更多地了解最新版本以及如何获取它:
http://puces-blog.blogspot.com/2011/03/news-from-software-smithy.html