Java에서 zip4j를 사용해 Zip 파일을 생성하고 암호를 걸어봅시다.
zip4j dependency 추가
<dependency>
<groupId>net.lingala.zip4j</groupId>
<artifactId>zip4j</artifactId>
<version>2.11.5</version>
</dependency>
Java 코드 작성
import java.io.File;
import java.util.ArrayList;
import net.lingala.zip4j.ZipFile;
import net.lingala.zip4j.model.ZipParameters;
import net.lingala.zip4j.model.enums.EncryptionMethod;
...
public void zipFileSave(List<File> fileList) {
String zipFileName = "파일명";
String zipPassword = "암호";
try {
ZipParameters zipParameters = new ZipParameters();
zipParameters.setEncryptFiles(true);
zipParameters.setEncryptionMethod(EncryptionMethod.ZIP_STANDARD);
ZipFile zipFile = new ZipFile("/directory/"+zipFileName, zipPassword.toCharArray()); // (원하는 경로와 파일명, 암호)
// ZipFile에 추가 및 생성.
zipFile.addFiles(fileList, zipParameters);
}catch (Exception e) {
...
}
}
참고
https://github.com/srikanth-lingala/zip4j?tab=readme-ov-file