File file = new File(dest, entry.getName());
if (entryName.endsWith(File.separator)) {
FileUtils.forceMkdir(file);
} else {
OutputStream out = FileUtils.openOutputStream(file);
try {
IOUtils.copy(zipInput, out);
} catch (Exception e) {
e.printStackTrace();
} finally {
IOUtils.closeQuietly(out);
}
}
zipInput.closeEntry();
}
}
// 测试
public static void main(String[] args) {
try {
// zipFile("M:\\ZIP\\test\\tempZIP", "M:\\ZIP\\test\\bbc.zip");
unzipFile("M:\\ZIP\\test\\bbc.zip", "M:\\ZIP\\test\\bb\\");
} catch (IOException e) {
e.printStackTrace();
}
}
}
注:
1、详细情况请参照JDK文档
2、JDK自身的ZIP包不支持中文,所以网上有很多介绍Apache下的解决方案,此处不作描述,文章太长了就更加臭了,另起一篇写。
3、不支持密码,网上另有支持密码的项目,如果可能,另起文章介绍吧!