Декомпресс архив 7ZIP с несколькими файлами и каталогами в Java [закрыто
Вопрос
Я хочу распаковать архив 7ZIP / LZMA с несколькими файлами и каталогами в Java. Я пытался использовать официальный 7ZIP SDK, но я потерпел неудачу, так как мои навыки программирования не являются тем, которые не продвигаются для этой темы. Однако я набрал некоторые библиотеки, которые облегчают поддержку в Java, говоря о LZMAOTPUTSTREAM / LZMAINPTSTREAM - однако я не знаю, как использовать эти «потоки», чтобы распаковать многофазный архив. Я застрял.
Решение
В примере заменить compressed
с новым файлом («PATH_TO_FILE»). Примерный код даст выходной поток, я полагаю, что LZMAOTPUTSTREAM или библиотека имеет соответствующие методы для преобразования потока в двоичную или строку.
По умолчанию LZMA - это только алгоритм сжатия, а не архиватор файла, такой как TAR или ZIP. (Примечание. 7-zip-программа - это архиватор файла, но библиотека, которую вы связываете, не поддерживает прохождение файлов и распаковки.
Я бы предложил использовать алгоритм сжатия в службе поддержки, как Zip или Gz. Если вы должны использовать LZMA, вы можете использовать TAR для создания файлового архива, а затем сжимайте его с помощью LZMA. Или используйте Zip с нулевым сжатием.
Вот Java TAB Библиотека.