代码:
/**
* 压缩文件
* @param sourceDirectory 目标文件夹
* @param sourceFile 目标文件
* @param zipFile 压缩文件
*/
public static void zipFile(String sourceDirectory, String sourceFile, String zipFile) {
try {
// 创建一个ZipFile对象,指定要创建的ZIP文件路径
ZipFile zipFileObj = new ZipFile(sourceDirectory + File.separator +zipFile,ZIP_CERT.toCharArray());
// 3. 创建一个 ZipParameters 对象并设置加密方法
ZipParameters params = new ZipParameters();
params.setEncryptionMethod(EncryptionMethod.AES);
//开启密码
params.setEncryptFiles(true);
// 4. 将源文件添加到 ZIP 文件中,同时应用加密参数
zipFileObj.addFile(new File(sourceDirectory + File.separator + sourceFile), params);
} catch (IOException e) {
e.printStackTrace();
}
}
pom:
<!-- https://mvnrepository.com/artifact/net.lingala.zip4j/zip4j -->
<dependency>
<groupId>net.lingala.zip4j</groupId>
<artifactId>zip4j</artifactId>
<version>2.6.1</version>
</dependency>