Показать сообщение отдельно
Старый 08.11.2013, 19:15
uglan вне форума Посмотреть профиль Отправить личное сообщение для uglan Посетить домашнюю страницу uglan Найти все сообщения от uglan
  № 1  
Ответить с цитированием
uglan

Регистрация: Mar 2003
Адрес: moscow
Сообщений: 102
Отправить сообщение для uglan с помощью ICQ Отправить сообщение для uglan с помощью Skype™
Question Скачивание объемных файлов с сервака

Сегодня на повестке дня скачивание файлов с сервера без захламления памяти что немаловажно.
Сейчас я использую loader таким способом:
Код AS3:
var loader:Loader = new Loader();
	var request:URLRequest = new URLRequest("http://videos.hd-trailers.net/thehobbit2-sneakpeek_h1080p.mov");	
	var loaderContext:LoaderContext = new LoaderContext(false, ApplicationDomain.currentDomain, null);
	loader.contentLoaderInfo.addEventListener(Event.COMPLETE, loadHand);
	loader.load(request, loaderContext);
На закачку способ работает, но дальше образуется две проблемы:
1) большие файлы засоряют память ровно под количество своего собственного веса что очень не хорошо
2) сохранение скаченного файла способом ниже почему то вызывает такую ошибку:

Error #2044: Unhandled IOErrorEvent:. text=Error #2124: Loaded file is an unknown type.

Сам код отвечающий за сохранение:
Код AS3:
function loadHand(e:Event):void{
	var file:File = File.applicationStorageDirectory.resolvePath("thehobbit2-sneakpeek_h1080p.mov"); 
	var wr:File = new File(file.nativePath);
	var stream:FileStream = new FileStream();
		stream.open(wr,FileMode.WRITE);
		stream.writeBytes(e.target.bytes, 0, e.target.bytesTotal); 
		stream.close();
}
Вопрос, как сливать файл постепенно без засорения памяти и что не так с моим способом сохранения?
И да, download() от FileReference не подходит, т.к. нужно сделать все потихому.
__________________
uglan