案例 文件压缩、文件夹压缩、设置密码、AES设置密码
代码:
package com.jc.test; import java.io.File; import java.util.ArrayList; import net.lingala.zip4j.core.ZipFile; import net.lingala.zip4j.exception.ZipException; import net.lingala.zip4j.model.ZipParameters; import net.lingala.zip4j.util.Zip4jConstants; /** * 压缩、加密文件(夹) * @author wang-xiaoming * 参考:https://www.iteye.com/blog/rensanning-1836727 * */ @SuppressWarnings("unchecked") public class TestZip4j { @SuppressWarnings("rawtypes") static ArrayList filesToAdd = new ArrayList<>(); static{ filesToAdd.add(new File("E:\\ZipTest\\jbpm.xml")); filesToAdd.add(new File("E:\\ZipTest\\测试.txt")); filesToAdd.add(new File("E:\\ZipTest\\开发代码检查规范.docx")); filesToAdd.add(new File("E:\\ZipTest\\生命树.jpg")); filesToAdd.add(new File("E:\\ZipTest\\主页.htm")); } /** * 文件压缩 * @throws ZipException */ public static void zipFile() throws ZipException{ ZipFile zipFile = new ZipFile("E:\\ZipTest\\文件压缩一.zip"); ZipParameters parameters = new ZipParameters(); parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL); zipFile.addFiles(filesToAdd, parameters); } /** * 文件夹压缩 * @throws ZipException */ public static void zipFolder() throws ZipException{ ZipFile zipFile = new ZipFile("E:\\ZipTest\\文件夹压缩二.zip"); String folderToAdd = "E:\\ZipTest"; ZipParameters parameters = new ZipParameters(); parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL); zipFile.addFolder(folderToAdd, parameters); } /** * 设置密码 * @throws ZipException */ public static void setPwd() throws ZipException{ ZipFile zipFile = new ZipFile("E:\\ZipTest\\设置密码压缩三.zip"); ZipParameters parameters = new ZipParameters(); parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL); parameters.setEncryptFiles(true); parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_AES); parameters.setAesKeyStrength(Zip4jConstants.AES_STRENGTH_256); parameters.setPassword("test3356!"); zipFile.addFiles(filesToAdd, parameters); } /** * aes设置密码 * @throws ZipException */ public static void setPwd2() throws ZipException{ ZipFile zipFile = new ZipFile("E:\\ZipTest\\aes设置密码压缩四.zip"); ZipParameters parameters = new ZipParameters(); parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL); parameters.setEncryptFiles(true); parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_STANDARD); parameters.setPassword("test3356!"); zipFile.addFiles(filesToAdd, parameters); } public static void main(String[] args) throws ZipException { zipFile(); zipFolder(); setPwd(); setPwd2(); } }
结果:

雨淋淋过的季节

浙公网安备 33010602011771号