admin管理员组文章数量:1589660
我们经常遇到需要对文件进行压缩操作,常用的工具室zip4j,目前网上都是旧版本的zip4j代码,压缩也比较繁琐,最新的zip4j版本压缩一行代码就搞定,在github开源项目中就有例子。
https://github/srikanth-lingala/zip4j
首先引入pom文件
<dependency>
<groupId>net.lingala.zip4j</groupId>
<artifactId>zip4j</artifactId>
<version>2.8.0</version>
</dependency>
1.然后压缩单个文件以下代码就能完成
new ZipFile("filename.zip").addFile("filename.ext");
或
new ZipFile("filename.zip").addFile(new File("filename.ext"));
2.压缩多个文件
new ZipFile("filename.zip").addFiles(Arrays.asList(new File("first_file"), new File("second_file")));
3.将文件夹添加到压缩文件
new ZipFile("filename.zip").addFolder(new File("/users/some_user/folder_to_add"));
4.加密压缩
ZipParameters zipParameters = new ZipParameters();
zipParameters.setEncryptFiles(true);
zipParameters.setEncryptionMethod(EncryptionMethod.AES);
// Below line is optional. AES 256 is used by default. You can override it to use AES 128. AES 192 is supported only for extracting.
zipParameters.setAesKeyStrength(AesKeyStrength.KEY_STRENGTH_256);
List<File> filesToAdd = Arrays.asList(
new File("somefile"),
new File("someotherfile")
);
ZipFile zipFile = new ZipFile("filename.zip", "password".toCharArray());
zipFile.addFiles(filesToAdd, zipParameters);
以上压缩方法可以在官方开源的demo中找到,压缩和加密压缩几行代码就搞定,代码看着很简洁。如下根据官方的demo写的文件压缩方法
版权声明:本文标题:Java文件压缩加密 内容由热心网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:https://m.elefans.com/dongtai/1728074400a1144300.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论