java压缩文件并对压缩包进行加密

来源:互联网 发布:js 定义true 编辑:程序博客网 时间:2024/04/29 07:50

     由于最近有个需求:从数据库抽取数据压缩加密后工供用户下载,压缩包密码以短信形式发送给用户。

     压缩还好,jdk本身的java.util.zip包就可以搞定,但是没有提供对压缩包加密的方法。几经查询终于找到个第三方工具包zip4j_1.3.1.zip轻轻松松就可以搞定压缩加密等一系列问题。现将该工具包分享出来。

     下面是自己写的一个简单的压缩加密的例子:

 

  public static void main(String[] args) {     String sss="五千年的风和雨啊创了多少梦\r\nahhwdpjfwjfpwjpf\r\n19eu923ur932ur03";    String passwd="111#";        ZipParameters parameters = new ZipParameters();          parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE);           // 压缩方式          parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL);    // 压缩级别          parameters.setSourceExternalStream(true);        parameters.setFileNameInZip("aaaa.txt");        if (!"".equals(passwd)) {              parameters.setEncryptFiles(true);              parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_STANDARD); // 加密方式              parameters.setPassword(passwd.toCharArray());          }        try {              ZipFile zipFile = new ZipFile("D:\\java压缩文件.zip");               zipFile.addStream(new ByteArrayInputStream(sss.getBytes()), parameters);        } catch (ZipException e) {              e.printStackTrace();          }      }  





原创粉丝点击