Я хочу распаковать файл с помощью JavaScript из файла или объекта BLOB-объекта - PullRequest
1 голос
/ 03 января 2012

Я хотел бы прочитать файл pptx в javascript, поэтому я хотел бы распаковать его и прочитать содержимое в памяти.Я не хочу сначала сохранять файл на сервере.Я хочу выбрать файл с типом входного файла и просто использовать файл элемента ввода и читать его в двоичном виде или что-то в этом роде.

Я нашел много библиотек, чтобы разархивировать zip-файлы из url, я попытался взглянуть на код, но не смог понять, использовать ли его для массива больших двоичных объектов или байтов.

Я могу прочитать некоторые вещи, такие как вещи, описанные здесь: http://en.wikipedia.org/wiki/ZIP_%28file_format%29#File_headers

Но я не знаю, как дефляция работает на уровне байтов или битов.

1 Ответ

1 голос
/ 03 января 2012

(Вы сказали, что хотите использовать элемент input, поэтому я предполагаю, что это JavaScript на основе браузера.)

Первым шагом будет использование File API для чтения файла в виде двоичной строки . См. мой ответ на этот другой вопрос для примера этого. Тогда вам нужно найти библиотеку. Быстрый поиск обнаружил этот , который реализует как инфляцию, так и дефляцию. (У меня нет личного опыта его использования, я нашел его в ответе на этот другой вопрос .)

Естественно, это будет работать только в довольно современных браузерах, которые поддерживают File API. В противном случае у вас нет другого выбора, кроме как отправить файл на сервер и выполнить работу там, поскольку вы не можете получить доступ к содержимому файла в браузере без API-интерфейса файлов.

...