Java實現自動壓縮檔並加密的方法樣本,java樣本

來源:互聯網
上載者:User

Java實現自動壓縮檔並加密的方法樣本,java樣本

本文執行個體講述了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; }}

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.