Я использовал библиотеку java-unrar для unrar rar файла. Но у меня возникла проблема: файл зашифрован или прерван. RAR файл может быть удален вручную. И я также делаю способ, используя команду, чтобы отменить его, и это успешно ./
Но когда я использую другой способ, у меня возникает проблема: mainheader равен нулю. Вот мой код:
public static void main(String[] args) throws RarException, IOException {
String filename = "D:\\minh\\OUTSOURCE\\NFSC\\BAOMINH\\DOWNLOAD\\20191022\\1\\Newfolde2r.rar";
File local = new File(filename);
Archive archive = new Archive(new NativeStorage(local));
List<FileHeader> list = archive.getFileHeaders();
for (FileHeader header : list) {
System.out.println(header.isDirectory());
System.out.println(header.getFileNameW());
System.out.println(header.getFileNameString());
archive.extractFile(header, new FileOutputStream(new File("out.txt")));
}
}