您可以将 ByteArray 弹出到 Loader 中,然后使用 FileReference 启动下载对话框。
var file:FileReference = new FileReference();
var loader:Loader = new Loader();
//put loader in binary mode
loader.dataFormat = URLLoaderDataFormat.BINARY;
loader.addEventListener(Event.COMPLETE, loader_completeHandler);
//I will assume you are getting an appropriate ByteArray from your stream
var data:ByteArray = new ByteArray();
loader.loadBytes(data);
private function loader_completeHandler(evt:Event):void {
//now pop a save window
file.save(loader.data,"default_file_name.png")
}
编辑
我还将假设您这样做是为了通过非标准协议(例如 AMF)流式传输文件,否则您只需通过 HTTP 输出文件并让浏览器处理其余部分。