AS3 Работа с произвольно большими файлами

Я пытаюсь прочитать очень большой файл в AS3, и у меня возникают проблемы со средой выполнения, просто сбой на меня. Я в настоящее время используюFileStream открыть файл асинхронно. Это не работает (происходит сбой без исключения) для файлов размером более 300 МБ.

_fileStream = new FileStream();
_fileStream.addEventListener(IOErrorEvent.IO_ERROR, loadError);
_fileStream.addEventListener(Event.COMPLETE, loadComplete);
_fileStream.openAsync(myFile, FileMode.READ);

Глядя надокументацияПохоже, класс FileStream все еще пытается прочитать весь файл в память (что плохо для больших файлов).

Есть ли более подходящий класс для чтения больших файлов? Я действительно хотел бы что-то вроде буферизованного класса FileStream, который загружает только байты из файлов, которые будут прочитаны далее.

Я ожидаю, что мне может понадобиться написать класс, который сделает это для меня, но тогда мне нужно будет читать только часть файла за раз. Я предполагаю, что я могу сделать это, устанавливая свойства position и readAhead FileStream для чтения фрагмента из файла за раз. Я хотел бы сэкономить время, если такой класс уже существует.

Есть ли хороший способ обработки больших файлов в AS3 без загрузки всего содержимого в память?

Ответы на вопрос(2)

Ваш ответ на вопрос