Существует ли официальное (или распространенное) расширение или суффикс файла для дефлированных файлов? - PullRequest
5 голосов
/ 21 марта 2012

сжатые файлы обычно заканчиваются на .gz. Но существует ли официальное (или распространенное) расширение или суффикс файла для дефлированных файлов? Я не смог найти ни одного.

1 Ответ

8 голосов
/ 21 марта 2012

Для файлов, сжатых с помощью zlib (RFC-1950), сжатых методом дефляции (RFC-1951), определено расширение .zz. У меня нет расширения, определенного для необработанных сжатых данных с дефляцией (RFC-1951). В общем случае необработанные данные выкачивания используются только в контексте какого-либо другого потока данных или формата файла.

В документации Java неясно, что создается, но похоже, что Deflater по умолчанию генерирует данные дефляции в zlib-оболочке, если только логическое значение nowrap не соответствует true, и в этом случае создаются необработанные данные, сжатые дефлятом.

Больше фона:

Интересно видеть, что люди склонны думать, что все эти форматы могут интерпретироваться любым, что читает один из них, просто потому, что основной сжатый формат (deflate) одинаков. Это не относится к делу. Утилита gzip может читать сжатые данные gzip или файлы zip с однократным вводом (и некоторые устаревшие форматы, не связанные с deflate), но не zlib или raw deflate. Распаковка Info-ZIP может считывать только формат ZIP, который может включать дефлятирование данных как один из форматов сжатых данных (есть другие). zlib - это библиотека, а не утилита, которая обеспечивает прямую поддержку чтения и записи формата zlib (очень компактная оболочка для данных deflate), формата gzip и необработанного формата deflate без оболочки. Последние могут использоваться другими утилитами для обработки дефлятированных данных в других форматах, таких как ZIP. Вы можете написать свою собственную молнию и расстегнуть молнию, используя zlib для обработки тяжелой работы по сжатию и декомпрессии (а также вычисления crc), но вам придется обрабатывать все сложности заголовков, трейлеров и центральных словарей формата ZIP. pigz может читать файлы gzip, zip-файлы с одной записью и формат zlib (а также старый формат сжатия).

...