Zip4jはファイルリストの暗号化をサポートしています...
主な特長:
- Zip ファイルからのファイルの作成、追加、抽出、更新、削除
- パスワードで保護された Zip ファイルの読み取り/書き込み
- AES 128/256 暗号化をサポート
- 標準の Zip 暗号化をサポート
- Zip64形式をサポート
- Store (No Compression) および Deflate 圧縮方式をサポート
- 分割 Zip ファイルからファイルを作成または抽出する (例: z01、z02、...zip)
- Unicode ファイル名をサポート
- 進捗モニター
このサンプル コードAddFilesWithAESEncryption.javaを見てください。
// Initiate ZipFile object with the path/name of the zip file.
ZipFile zipFile = new ZipFile("c:\\ZipTest\\AddFilesWithAESZipEncryption.zip");
// Build the list of files to be added in the array list
// Objects of type File have to be added to the ArrayList
ArrayList filesToAdd = new ArrayList();
filesToAdd.add(new File("c:\\ZipTest\\sample.txt"));
filesToAdd.add(new File("c:\\ZipTest\\myvideo.avi"));
filesToAdd.add(new File("c:\\ZipTest\\mysong.mp3"));
// Initiate Zip Parameters
ZipParameters parameters = new ZipParameters();
// set compression method to deflate compression
parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE);
parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_ULTRA);
// Set the encryption flag to true
parameters.setEncryptFiles(true);
// Set the encryption method to AES Zip Encryption
parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_AES);
// Set AES Key strength. Key strengths available for AES encryption are:
parameters.setAesKeyStrength(Zip4jConstants.AES_STRENGTH_256);
// Set password
parameters.setPassword("test123!");
// Now add files to the zip file
zipFile.addFiles(filesToAdd, parameters);