2010-10-07 2 views
0

Я пытаюсь md5 некоторый файл с as3corelib, но если я сравню хэш as3 с php one, я получаю разные строки.Различные MD5 с as3corelib

Вот что я делаю:

_loader = new URLLoader(); 
_loader.load(new URLRequest("image.jpg")); 
_loader.addEventListener(Event.COMPLETE, completeHandler); 

private function completeHandler(event:Event):void { 
     var data:ByteArray = new ByteArray(); 
     data.writeUTFBytes(_loader.data); 
     var hash:MD5Stream = new MD5Stream(); 
     trace(hash.complete(data)); 
} 

Я уже гугл по этому вопросу, находя это post где подобная вещь обсуждается (сделав хэш строки).

Любая идея?

ответ

3

Попробуйте установить загрузчик DataFormat свойство URLLoaderDataFormat.BINARY до нагрузки() вызова:

_loader = new URLLoader(); 
_loader.dataFormat = URLLoaderDataFormat.BINARY; 
_loader.load(new URLRequest("image.jpg")); 
_loader.addEventListener(Event.COMPLETE, completeHandler); 

private function completeHandler(event:Event):void { 
     var hash:MD5Stream = new MD5Stream(); 
     trace(hash.complete(_loader.data)); 
} 

Затем использовать непосредственно в _loader.data переменной, так как теперь это ByteArray,

+0

это и сделал трюк. благодаря :) –

Смежные вопросы