我想讀取AS3中的一個非常大的文件,並且遇到運行時出現問題而導致我崩潰。我目前使用FileStream來異步打開文件。對於大於300MB的文件,這不起作用(沒有異常時崩潰)。AS3使用任意大的文件
_fileStream = new FileStream();
_fileStream.addEventListener(IOErrorEvent.IO_ERROR, loadError);
_fileStream.addEventListener(Event.COMPLETE, loadComplete);
_fileStream.openAsync(myFile, FileMode.READ);
在看documentation,這聽起來像FileStream類仍試圖在整個文件到內存(這是壞對於大文件)來讀取。
是否有更合適的類用於讀取大文件?我真的想要像緩衝的FileStream類,只加載下一個將被讀取的文件中的字節。
我在期待我可能需要寫一個類來爲我做這件事,但那時我只需要一次只讀一段文件。我假設我可以通過設置FileStream的位置和readAhead屬性來一次讀取文件塊。如果有這樣的課程已經存在,我很樂意節省一些時間。
有沒有一種很好的方法來處理AS3中的大文件,而無需將全部內容加載到內存中?
這類似於我在想什麼,我自己做的實現的。我可能會實現額外的抽象層。 – Kekoa 2010-02-24 21:12:30