Java解压zip文件(zip4j)
需要的jar包:https://download.csdn.net/download/weixin_43611145/10941990
代码:
import java.io.File;
import net.lingala.zip4j.core.ZipFile;
import net.lingala.zip4j.exception.ZipException;
public class Test {
/**
* 解压zip(带密码)
* @param zipPath zip文件路径
* @param outPath 解压路径
* @param passwd 密码
*/
public static void unZip(String zipPath, String outPath, String passwd) {
File zipF = new File(zipPath);
try {
ZipFile zFile = new ZipFile(zipF);
zFile.setFileNameCharset("GBK");
if(!zFile.isValidZipFile()) {
throw new ZipException("压缩文件不合法,可能被损坏");
}
//解压目录
File outDir = new File(outPath);
if(outDir.isDirectory() && !outDir.exists()) {
outDir.mkdirs();
}
//解压密码
if(zFile.isEncrypted()) {
zFile.setPassword(passwd.toCharArray());
}
zFile.extractAll(outPath);
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) {
String zipP = "D:\\test\\test.zip";
String outP = "D:\\test";
String passwd = "111";
unZip(zipP, outP, passwd);
}
}