Java代码打开一个受密码保护的ZIP文件,该文件仅在Mac OS中使用7zx和Keka打开



我有一个受密码保护的zip文件,该文件仅在Mac中使用7zx和Keka打开。我必须在Java中编写代码以解压缩密码保护的ZIP文件,然后对其进行一些操作。我尝试在apache.commons.compress中使用七Z API,但我无法压缩它的例外,不好的7Z签名。是否有任何API支持用于解压缩zip文件?

unzip -P test@123 abcd.zip
Archive:  abcd.zip
   skipping: abcd.txt  need PK compat. v5.1 (can do v2.1)

据我所知,有一个库,即 zip4j ,请查看此链接

尝试此代码:

//zip password
String pass="abc";
try {
    ZipFile zipFile = new ZipFile("dir/xyz.zip");
      if (zipFile.isEncrypted()) {
         zipFile.setPassword(pass);
    }
//extract somewhere in directory
zipFile.extractAll("dir/abc");
} 
 catch (ZipException e) {
 e.printStackTrace();
}

最新更新