Java实现压缩文件和加密(基于zip4j) 您所在的位置:网站首页 java压缩zip Java实现压缩文件和加密(基于zip4j)

Java实现压缩文件和加密(基于zip4j)

2023-08-11 15:24| 来源: 网络整理| 查看: 265

文章目录 前言一、zip4j是什么?二、使用步骤1.引入jar包(maven中直接引入)2.本地下载jar包引用1下载jar包2在项目中添加 3.代码实现 总结

前言

web应用中如何对文件进行压缩,加密,你了解吗?笔者这里提供一种实现方式,仅供参考!

一、zip4j是什么?

由于java自带的zip工具不支持加密,zip4j作为一个开源的项目,解决了zip加密解密等问题

二、使用步骤 这里提供两种方式,第一种不需要下载jar包,第二种需要本地下载zip4j的jar包,下载链接在文章底部 1.引入jar包(maven中直接引入)

代码如下(示例):

net.lingala.zip4j zip4j 1.3.2 2.本地下载jar包引用 1下载jar包

zip4j-1.3.2下载链接 zip4j-1.3.1下载链接

2在项目中添加

在src目录下新建lib目录,将jar包添加到lib目录下 在这里插入图片描述 在pom文件中引用,注意路径

zip4j zip4j 1.3.1 system ${basedir}/src/lib/zip4j-1.3.1.jar 3.代码实现 /** * @Title: encrypt_zip * @Description:将指定路径下的文件压缩至指定zip文件,并以指定密码加密,若密码为空,则不进行加密保护 * @param src_file 待压缩文件路径 * @param dst_file zip路径+文件名 * @param encode 加密密码 * @return */ public static void encrypt_zip(String src_file, String dst_file, String encode) { File file = new File(src_file); 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(encode.toCharArray());//设置密码 try { ZipFile zipFile = new ZipFile(dst_file); zipFile.setFileNameCharset("gbk"); zipFile.addFile(file, parameters); } catch (net.lingala.zip4j.exception.ZipException e) { e.printStackTrace(); } } 总结

本地实现的话到这里就结束了,但是一般项目中不会直接调用本地文件绝对路径,一般是导出项目中的文件,这里就需要在正常的下载中间添加一个中间缓存路径用于压缩加密,具体实现方式参见我的另一篇文章



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有