
Zip4j_1.3.2 Java代码实现文件的压缩与解压
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
Zip4j是一款用于Java环境下的开源库,版本1.3.2提供强大的功能支持ZIP格式文件的压缩及解压操作,简化开发者的编码工作。
使用给定密码压缩指定文件或文件夹到指定位置。
dest参数可以是最终压缩文件存放的绝对路径、也可以是指定目录或者传null或者空字符串。
如果传入的是null或者空字符串,那么将把压缩文件存放在当前目录中,并且以源文件名作为压缩文件名,后缀为.zip;
如果是以路径分隔符结尾,则视为目录处理;否则视为指定的最终压缩文件存放位置。
参数说明:
- src:要被压缩的文件或文件夹路径。
- dest:生成的压缩包存放的位置。
- isCreateDir:是否在压缩后的归档中创建目录结构,仅当dest为目录时有效。如果设置为false,则直接将给定目录下的所有文件打包到一个zip包内而无任何子目录信息;
- passwd:用于加密和解密zip文件的密码。
```java
public static String zip(String src, String dest, boolean isCreateDir, String passwd) {
File sourceFile = new File(src);
ZipParameters parameters = new ZipParameters();
// 设置压缩方式为DEFLATE,级别为正常。
parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE);
parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL);
if (passwd != null && !.equals(passwd.trim())) {
// 开启加密
parameters.setEncryptFiles(true);
// 设置为标准的加密方式。
parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_STANDARD);
// 设置密码,使用给定的字符串作为密钥。
parameters.setPassword(passwd.toCharArray());
}
try {
ZipFile zip = new ZipFile(dest);
if (sourceFile.isDirectory()) {
// 如果不创建目录的话,将直接把给定目录下的文件压缩到zip包里
if (!isCreateDir) {
File[] subFiles = sourceFile.listFiles();
ArrayList
全部评论 (0)


