如何在 Java 中解压缩受密码保护的 7zip 文件?我找到了一种方法,但它不支持受密码保护的文件。这里是
public void decompress(String in, String destination) {
try{
File dest = new File(destination);
org.apache.commons.compress.archivers.sevenz.SevenZFile sevenZFile = new org.apache.commons.compress.archivers.sevenz.SevenZFile(new File(in));
org.apache.commons.compress.archivers.sevenz.SevenZArchiveEntry entry;
while ((entry = sevenZFile.getNextEntry()) != null){
if (entry.isDirectory()){
continue;
}
File curfile = new File(dest, entry.getName());
File parent = curfile.getParentFile();
if (!parent.exists()) {
parent.mkdirs();
}
FileOutputStream out = new FileOutputStream(curfile);
byte[] content = new byte[(int) entry.getSize()];
sevenZFile.read(content, 0, content.length);
out.write(content);
out.close();
}
}catch(Exception e){
Toast.makeText(getApplicationContext(),e.toString(),1000).show();
}
}