Java实现自动压缩文件并加密的方法示例
程序员文章站
2023-12-17 18:26:58
本文实例讲述了java实现自动压缩文件并加密的方法。分享给大家供大家参考,具体如下:
实现功能:自动压缩并加密
/**
*
* @title: zipfil...
本文实例讲述了java实现自动压缩文件并加密的方法。分享给大家供大家参考,具体如下:
实现功能:自动压缩并加密
/** * * @title: zipfilesandencrypt * @description: 将指定路径下的文件压缩至指定zip文件,并以指定密码加密,若密码为空,则不进行加密保护 * @param srcfilename 待压缩文件路径 * @param zipfilename zip文件名 * @param password 加密密码 * @return * @throws exception */ public void zipfilesandencrypt(string srcfilename,string zipfilename,string password) throws exception{ zipoutputstream outputstream=null; system.out.println("进入测试类"); if(stringutils.isempty(srcfilename) || stringutils.isempty(zipfilename)){ log.error("请求的压缩路径或者文件名有误"); return; } try { zipparameters parameters = new zipparameters(); parameters.setcompressionmethod(zip4jconstants.comp_deflate); parameters.setcompressionlevel(zip4jconstants.deflate_level_normal); if(!stringutils.isempty(password)){ parameters.setencryptfiles(true); parameters.setencryptionmethod(zip4jconstants.enc_method_aes); parameters.setaeskeystrength(zip4jconstants.aes_strength_256); parameters.setpassword(password); } arraylist<file> filestoadd = new arraylist<file>(); file file=new file(srcfilename); file[] files = new file[0]; if(file.isdirectory()) { files = file.listfiles(); for(int i=0;i<files.length;i++){ filestoadd.add(new file(srcfilename+files[i].getname())); system.out.println("文件名称:"+files[i].getname()); } } else { filestoadd.add(new file(srcfilename+file.getname())); } zipfile zipfile = new zipfile(srcfilename+zipfilename+".zip"); zipfile.addfiles(filestoadd, parameters); } catch (exception e) { system.out.println("文件压缩出错"); log.error("文件压缩出错", e); throw e; } }
更多关于java算法相关内容感兴趣的读者可查看本站专题:《java文件与目录操作技巧汇总》、《java数据结构与算法教程》、《java操作dom节点技巧总结》和《java缓存操作技巧汇总》
希望本文所述对大家java程序设计有所帮助。