Есть ли решение для чтения файлов RAR версии 5 с использованием библиотеки Junrar? - PullRequest
1 голос
/ 21 июня 2019

Я пишу часть Java-приложения, отвечающего за чтение архивных файлов различных форматов и подготовку режима предварительного просмотра.

Библиотека Junrar оказалась наиболее надежной для работы с форматом RAR, но она не поддерживает последнюю версию 5 rar.Поддерживаются только более ранние версии.

Команда разработчиков Junrar подтверждает этот факт здесь: https://github.com/junrar/junrar/issues/23

Winrar по умолчанию создает rar-файлы версии 5, но флажок 'RAR4' в свойствах помогает создатьфайл версии 4 - который идеально подходит для работы.Но вы должны щелкать по нему каждый раз, когда архивируете файл - это не очень хороший способ (более ранние версии Winrar не могут быть загружены с официального сайта).

В моем случае файл хранится в виде байтового массива.Мне не нужен UNRAR-файл, я просто читаю его - мне нужно «имя» и «размер» каждого файла внутри него - поэтому я готовлю данные предварительного просмотра содержимого архива в виде небольшой таблицы HTML.

Вы знаете какую-нибудь другую хорошую библиотеку для работы с форматом Rar?Я не могу найти ни одного.Или, может быть, вы можете представить несколько хороших обходных путей?

1 Ответ

0 голосов
/ 21 июня 2019

Не существует доступного решения для отмены архивов RAR5, кроме самого Winrar.Вы можете вызвать его как внешнюю программу, если это возможно в вашей ОС.Я также обрабатываю архивы разных форматов и использую junrar для извлечения RAR, архивы RAR5 остаются необработанными.Изначально Junrar был разработан Эдмундом Вагнером, а некоторое время назад поддержка была обновлена ​​на Beothorn .Но, к моему большому сожалению, он по какой-то причине не планирует реализовывать поддержку RAR5.Я также проверил Raroscope , он также не поддерживает RAR 5.

Кстати, другой архив, который не поддерживается библиотекой Java с открытым исходным кодом, это ARJ.

...