无意中在网上看到的一篇好文章,共享一下,
点此浏览源地址
实现过程
新建一个fla文件,名称自定,代码如下
复制内容到剪贴板
代码:
var bytes = new ByteArray ();
var ldr:URLLoader = new URLLoader();
ldr.dataFormat = URLLoaderDataFormat.BINARY;
var req:URLRequest = new URLRequest("loadedswf.swf");
ldr.addEventListener(Event.COMPLETE, completeHandler);
ldr.load(req);
function completeHandler(e:Event):void {
bytes=ldr.data;
var s:String="";
for (var j : int = 0; j < bytes.length; j++){
var n:String=bytes.readUnsignedByte().toString(16);
if(n.length<2){
n="0"+n;
}
s+=n;
}
trace(s);
} 其中的loadedswf.swf修改为你想载入的swf,ctrl+enter一下会输出许多字符串,将这些字符串保存为ta.txt备用
然后再新建一个fla文件,代码如下
复制内容到剪贴板
代码:
var ldr1:URLLoader = new URLLoader();
var ldr = new Loader ();
var req:URLRequest = new URLRequest("ba.txt");
ldr1.addEventListener(Event.COMPLETE, completeHandler1);
ldr1.load(req);
function completeHandler1(e:Event):void {
var bA =new ByteArray ();
var data1:Array=ldr1.data.split("");
var data2:Array=[];
for (var i : int = 0; i < data1.length; i +=2){
data2.push("0x"+data1 [i]+data1[i+1]);
}
for (var j : int = 0; j < data2.length; j ++){
bA[j] = data2[j];
}
ldr.contentLoaderInfo.addEventListener (Event.COMPLETE, completeHandler);
ldr.loadBytes (bA);
}
function completeHandler(e:Event):void {
//trace(ldr.content.testing);
//var func = ldr.content.helloBaby;
//func();
//var ball = ldr.content.ball_mc;
//addChild(ball);
//ball.x = ball.y = 200;
addChild(ldr.content);
} 其中的ldr.content就是载入的swf