`

java中使用zip4j创建带密码保护的文件

 
阅读更多
在java中创建zip文件问题不大,但如果要创建带密码保护的zip文件,则可以使用
zip4j这个项目(下载地址:http://www.lingala.net/zip4j/download.php)

zip4j还支持针对普通zip文件的crud,支持AES 128/256 的加密,支持分卷zip等很多功能
下面看个例子:

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;
 
public class CreatePasswordProtectedZipExample
{
    public static void main(String[] args)
    {
        try {
           //创建zip文件
            ZipFile zipFile = new ZipFile("C:/temp/test.zip");
             
            //增加文件到zip中
            ArrayList<File> filesToAdd = new ArrayList<File>();
            filesToAdd.add(new File("C:/temp/test1.txt"));
            filesToAdd.add(new File("C:/temp/test2.txt"));
             
            //初始化各类参数
            ZipParameters parameters = new ZipParameters();
//设置压缩模式
            parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE); 
             
            //DEFLATE_LEVEL_FASTEST     - Lowest compression level but higher speed of compression
            //DEFLATE_LEVEL_FAST        - Low compression level but higher speed of compression
            //DEFLATE_LEVEL_NORMAL  - Optimal balance between compression level/speed
            //DEFLATE_LEVEL_MAXIMUM     - High compression level with a compromise of speed
            //DEFLATE_LEVEL_ULTRA       - Highest compression level but low speed
            parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL);
             
             //设置加密标志
            parameters.setEncryptFiles(true);
             
            //设置aes加密
            parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_AES);
             
            //AES_STRENGTH_128 - For both encryption and decryption
            //AES_STRENGTH_192 - For decryption only
            //AES_STRENGTH_256 - For both encryption and decryption

        
            parameters.setAesKeyStrength(Zip4jConstants.AES_STRENGTH_256);
             
            //设置密码
            parameters.setPassword("123456");
             
       
            zipFile.addFiles(filesToAdd, parameters);
        }
        catch (ZipException e)
        {
            e.printStackTrace();
        }
    }
}
0
1
分享到:
评论

相关推荐

    使用zip4j生成有密码保护的ZIP文件

    本文将详细介绍如何使用`zip4j`库1.3.2版本创建一个带有密码保护的ZIP文件,并在项目中通过Maven进行依赖管理。 首先,让我们添加`zip4j`到Maven的`pom.xml`文件中。在`dependencies`节点下,插入以下代码: ```...

    zip4j--Java操作zip压缩文件接口

    Java操作zip压缩格式的开源项目,功能强大而且使用方便,能完全满足Java操作Zip压缩文件,官方网址为:http://www.lingala.net/zip4j/ 可以下载到jar包、源码和示例,好像没有提供API文档。 不过需要使用代理访问...

    java压缩文件生成带密码的zip包,解压带密码的zip包的工具类

    压缩文件方法 该方法需要引用zip4j的jar文件 单个文件、多个文件压缩 /** * 使用给定密码压缩指定文件或文件夹到指定位置. * * dest可传最终压缩文件存放的绝对路径,也可以传存放目录,也可以传null或者""....

    Java压缩解压ZIP之Zip4j

    Java中的压缩和解压操作是常见的文件处理任务,Zip4j是一个非常实用的Java库,专为处理ZIP文件而设计。这个库提供了丰富的API,使得开发者可以方便地创建、读取、更新和解压ZIP文件。这篇博客文章“Java压缩解压ZIP...

    zip带密码压缩解压缩工具类(java)

    本文将深入探讨如何使用`zip4j`库来实现带密码的ZIP文件压缩与解压缩,该库支持中文文件名,并且具有良好的密码保护功能。 `zip4j`是一个强大的Java库,它提供了丰富的API来处理ZIP文件,包括添加、删除、提取文件...

    zip4j-1.3.2.jar 包下载,处理zip压缩文件的开发包

    zip4j库作为一个强大的工具,为开发者提供了便捷的方法来读取、写入、创建、添加、提取、更新以及从ZIP文件中删除文件,特别是它支持对受密码保护的ZIP文件的操作。下面我们将深入探讨zip4j库的核心功能和使用方法。...

    ZIP4J压缩包加密解密

    ZIP4J提供了一套完整的API,可以进行文件和目录的添加、删除、提取等操作,并且能够创建和读取带有密码保护的ZIP文件。 在ZIP文件加密方面,ZIP4J支持两种加密算法:传统ZIP加密(也称为弱加密)和AES(Advanced ...

    java操作zip_包括加解密码

    为了添加密码保护,我们需要使用像`Zip4j`这样的第三方库,它提供了对ZIP文件加密的支持,包括传统的PKWARE DES加密和更安全的AES(高级加密标准)。 Zip4j库的版本为1.3.1,这个版本已经包含了ZIP文件的创建、读取...

    基于zip4j的压缩工具

    以上代码展示了如何使用zip4j库创建一个带有密码保护的ZIP文件,并将一个文件添加到其中。 总之,zip4j为Java开发者提供了一套强大且易用的工具,用于处理ZIP文件的各种需求。通过其丰富的功能,开发者可以在项目中...

    zip4j.jar包下载 包含zip4j-2.10.0版本

    4. 文件加密:Zip4j支持使用传统的ZIP密码加密,以及更安全的AES-256加密。这为ZIP文件提供了额外的安全保障。 5. 处理大型文件:Zip4j可以处理大文件,即使超过2GB的文件也能轻松应对。 6. 迭代ZIP文件内容:通过...

    zip4j-java加密压缩

    要在项目中使用zip4j,首先需要将其添加为依赖。如果你的项目是Maven工程,可以在pom.xml文件中添加以下依赖: ```xml &lt;groupId&gt;net.lingala.zip4j&lt;/groupId&gt; &lt;artifactId&gt;zip4j &lt;version&gt;1.3.2 ``` 对于非...

    zip4j包-1.3.2.zip

    1. **创建和添加文件**:使用zip4j,开发者可以轻松地创建新的ZIP文件,并将本地文件或文件夹添加到ZIP文件中。此外,它还可以添加目录结构,使得文件组织更为有序。 2. **读取和提取文件**:zip4j可以读取ZIP文件...

    java 操作Zip文件(压缩、解压、加密).zip

    - **加密**:`zip4j`支持AES 128/256位加密,你可以设置密码保护Zip文件,确保数据安全。通过`setEncryptFiles(true)`开启加密,并使用`setPassword()`设定密码。 2. **Apache Ant**:`ant-1.10.6.jar`是Apache的...

    基于zip4j开源框架实现android解压带有密码的zip文件(进度条显示)

    本文将详细介绍如何使用`zip4j`在Android上实现解压带有密码的ZIP文件以及展示进度条的过程。 首先,`zip4j`是一个Java库,适用于Java和Android平台,它可以处理ZIP文件的各种操作。在Android项目中引入`zip4j`,你...

    zip4j 1.3.1

    要使用zip4j解析带密码的ZIP文件,首先需要将`zip4j_1.3.1.jar`添加到项目依赖中。然后,可以通过以下步骤进行操作: 1. **初始化ZipFile对象**:创建`ZipFile`对象,传入ZIP文件的路径。 ```java ZipFile zipFile...

    zip4j官方例子

    以上示例覆盖了Zip4j库的基本操作,包括创建、读取、更新、删除ZIP文件,以及设置密码保护。这些例子可以帮助你理解和应用Zip4j来满足你在Java项目中的压缩需求。请根据实际情况调整文件路径和参数,确保代码能正确...

    zip4j使用指南以及使用优化

    首先,要在Java项目中使用Zip4J,你需要将库添加到你的构建系统中。如果你使用Maven,可以在`pom.xml`文件中添加以下依赖: ```xml &lt;groupId&gt;net.lingala.zip4j&lt;/groupId&gt; &lt;artifactId&gt;zip4j &lt;version&gt;2.x.x...

    zip4j.jar包下载 包含zip4j-2.9.0版本和zip4j-1.3.1版本的j两个jar包,亲试均可用

    读/写受密码保护的zip文件和流 支持AES和zip标准加密方法 支持Zip64格式 存储(无压缩)和放气压缩方法 从拆分的zip文件中创建或提取文件(例如:z01、z02、…zip) 在zip中支持Unicode文件名和注释 进度监视器-...

    zip4j_1.3.2 - Java操作zip压缩文件接口最新版本

    Java操作zip压缩格式的开源项目,功能强大而且使用方便,能完全满足Java操作Zip压缩文件,官方网址为:http://www.lingala.net/zip4j/ 可以下载到jar包、源码和示例,好像没有提供API文档。 不过需要使用代理访问...

    Java带密码压缩zip与解压文件源码Java实用源码整理

    本篇文章将深入探讨如何使用Java实现带密码保护的ZIP文件的压缩和解压缩功能,这对于保护敏感数据至关重要。 首先,Java标准库提供了一个名为`java.util.zip`的包,其中包含用于处理ZIP文件的类,如`...

Global site tag (gtag.js) - Google Analytics