Формат GZIP не зависит от платформы.Он определяет формат как последовательность октетов и не зависит от проблем с упорядочением байтов на платформе или в сетевом оборудовании.Вы можете убедиться в этом сами, внимательно прочитав спецификацию.
Любой инструмент, который правильно реализует спецификацию GZIP 1 , должен обрабатывать файл GZIP, созданный любым другим (спецификациясовместимый) на любой другой платформе.
Существует несколько незначительных предостережений:
Файл GZIP может дополнительно кодировать имя исходного (исходного) файла.В спецификации сказано, что необязательное имя файла должно состоять из символов ISO 8859-1.Это ограничение, если исходное имя файла содержит символы, которые не соответствуют ISO 8859-1, ИЛИ если система, в которой вы декодируете, не может сопоставить все символы ISO 8859-1 с набором символов, используемым для имен файлов.
Файл GZIP может дополнительно содержать метку времени модификации, представленную как смещение от «00:00:00 по Гринвичу, 1 января 1970 года» 2 .Как отмечается в спецификации, это может быть проблематично на платформах, где время по Гринвичу / UTC недоступно;например, MS-DOS.
Инструменты, которые создают и читают файлы GZIP, должны справляться с этим.Например, инструменты GNU gzip, поставляемые в стандартной комплектации в дистрибутивах Linux, имеют опцию --no-name
, которая указывает командам не сохранять или восстанавливать исходное имя файла и метку времени.
1 - Все ставки отключены для инструментов, которые являются неправильными реализациями спецификации.Но вы вряд ли найдете такой инструмент в дикой природе.
2 - В спецификации указано GMT, а не UTC.Я просто цитирую, что там написано.