Я распаковываю файл с примерно 3 миллионами отдельных текстовых файлов - сам zip-файл имеет размер около 12 ГБ. Это не несколько частей - это всего лишь один большой zip-файл между прочим. У меня нет исходных данных - все, что у меня есть, это заархивированный файл, что означает, что я не могу попытаться снова заархивировать содержимое (просто, чтобы вы знали).
Проблема в том, что, как я unzip
, в какой-то момент я получаю
..
file #1207565: bad zipfile offset (local header sig): 9570252890
file #1207566: bad zipfile offset (local header sig): 9570254437
file #1207567: bad zipfile offset (local header sig): 9570255044
file #1207568: bad zipfile offset (local header sig): 9570256141
file #1207569: bad zipfile offset (local header sig): 9570256786
file #1207570: bad zipfile offset (local header sig): 9570257539
..
Это, кажется, не влияет на каждую подпапку или файл соответственно в архиве, но для многих из них процесс Кажется, не удается.
На данный момент мне трудно догадаться, является ли проблема с упаковкой или распаковкой
Могу ли я попробовать какие-нибудь обходные пути?
Я столкнулся с той же проблемой - огромным zip-файлом с большим количеством файлов - и разархивируйте дросселируемую попытку распаковать ее. Возможное решение состоит в том, чтобы использовать Java archiver. Просто распакуйте свой материал с jar xvf file.zip
Я просто хотел скопировать комментарий в ответ, хотя я должен был использовать "попытку тяжелее" -FF
опция заставить это работать:
Предложение онлайн и с помощью страниц справочника состоит в том, чтобы использовать:
zip -F original.zip --out fixed.zip
и затем попытайтесь извлечьfixed.zip
как нормальный...