#javascript #optimization #zip #unzip #zipfile
#javascript #оптимизация #распаковать молнию #zip
Вопрос:
Я хочу извлечь файлы с именами message_1.json
из большого (13 ГБ) zip-файла в веб-браузере (с использованием javascript).
Эти файлы находятся в messages/inbox/some_random_name_xsfdscd/message_1.json
, messages/inbox/some_random_name_sfasggf/message_1.json
, messages/inbox/some_random_name_polsnbd/message_1.json
и т.д. в zip-файле.
Я попробовал использовать JSZip. К сожалению, он должен загрузить весь ZIP-файл целиком, прежде чем сможет его обработать. Это занимает слишком много времени и памяти, что часто приводит к сбою страницы.
Кроме того, существует библиотека zip-js, которая может получить дерево файлов перед распаковкой. Однако он не может обрабатывать zip-файлы размером более 4 ГБ.
Итак, можно ли извлекать только определенные файлы из больших архивов в веб-браузере, не занимая слишком много памяти и времени? Если да, то каким образом?
Комментарии:
1. Я не думаю, что вы можете частично разархивировать zip-файл, но мне любопытно посмотреть, что скажут другие люди.
2. У меня такая же проблема. Я пробовал различные пакеты npm: pako, unzipper, adm-zip, zip-js, fflate, но безуспешно. Кто-нибудь нашел решение для извлечения / выкачивания / распаковки определенного файла из большого zip-файла без чтения всего zip-файла?