解決用zip4j加密壓縮後在LINUX環境用UNZIP命令沒法解壓的問題

 public static void zip(File file, String pwd, String path)
   throws ZipException {
  ArrayList<File> files = new ArrayList<File>();
  files.add(file);
  ZipFile zipFile = new ZipFile(path);
  ZipParameters parameters = new ZipParameters();
  parameters.setCompressionMethod(Zip4jConstants.COMP_DEFLATE);// 壓縮方式
  parameters.setCompressionLevel(Zip4jConstants.DEFLATE_LEVEL_NORMAL);// 壓縮級別
  parameters.setEncryptFiles(true);
  // 這裏的配置要注意,配置不對將在LINUX下沒法解壓 ENC_METHOD_AES ==》 ENC_METHOD_STANDARD
  parameters.setEncryptionMethod(Zip4jConstants.ENC_METHOD_STANDARD);// 加密方式
  parameters.setAesKeyStrength(Zip4jConstants.AES_STRENGTH_256);
  parameters.setPassword(pwd);
  zipFile.addFiles(files, parameters);
  //源文件刪除
  file.delete();
 }

修改了加密方式,由原來的ENC_METHOD_AES ==》 ENC_METHOD_STANDARD加密

感謝某老師的指點!spa

相關文章
相關標籤/搜索