Я посмотрел на библиотеку Zip по умолчанию, которая поставляется с JDK и Apache сжатиями libs, и я недовольна ими по трем причинам:
-
Они раздуты и имеют плохой дизайн API. Я должен записать 50 строк вывода массива байтов котла, ввести zip-вход, вывести потоки файлов и закрыть соответствующие потоки и исключить исключения и переместить байт-буферы на свои собственные? Почему я не могу получить простой API, который выглядит как
Zipper.unzip(InputStream zipFile, File targetDirectory, String password = null)
иZipper.zip(File targetDirectory, String password = null)
, который просто работает? -
Кажется, что при распаковке распаковываются метаданные файлов и обработка паролей.
-
Кроме того, все библиотеки, которые я пытался, были медленнее на 2-3 раза по сравнению с инструментами командной строки командной строки, которые я получал с помощью UNIX?
Для меня (2) и (3) являются второстепенными точками, но я действительно хочу хорошую тестируемую библиотеку с однострочным интерфейсом.