Java 用于打开受密码保护的 zip 文件的代码,该文件只能在 mac OS 中使用 7zx 和 keka 打开

Java Code to Open a password protected zip file which is opening only with 7zx and keka in mac OS

我有一个受密码保护的 zip 文件,在 mac 中只能用 7zx 和 keka 打开。 我必须在 java 中编写代码来解压缩受密码保护的 zip 文件,然后对其进行一些操作。 我曾尝试在 apache.commons.compress 中使用 sevenz api 但我无法压缩它并出现异常, 坏 7z signature.Is api 支持解压缩 zip 文件吗?

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

据我所知,有一个库 zip4j,看看这个 link

然后试试这个代码:

//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();
}