Flex распаковать / распаковать огромные файлы - PullRequest
0 голосов
/ 20 августа 2010

У меня есть приложение AIR, которое должно распаковать файл большого размера (> 1 ГБ)

Я попробовал часто обсуждаемые утилиты, т.е. FZip nochump и еще немного
Я сталкиваюсь с той же проблемой со всеми из них, Они распаковывают весь файл в памяти (используя метод ByteArray.defalte)

Это хорошо работает с файлами небольшого размера, однако они просто вешают приложение, если размер файла большой (> 1 ГБ)

Есть предложения?

Ответы [ 2 ]

0 голосов
/ 21 августа 2010

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

Может быть, вы можете ограничить только одну утилиту, если уверены, что каждая платформа имеет общее время выполнения (например, Java).

0 голосов
/ 20 августа 2010

Нет ли способа использовать расширение файла, похожее на форматы RAR. Я думаю, что 7-Zip 7Z также поддерживает это. В зависимости от того, как реализована библиотека распаковки, расширение файла может теоретически уменьшить использование памяти.

Попробуйте использовать LZMA SDK в формате 7-Zip: http://www.7 -zip.org / sdk.html

Может быть, есть привязки Flex.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...