as3 解析xml 核心代码
2012-03-27 10:38
316 查看
private var bossInfors : Array = [];
readBossMessage("assets/ui/daily/activityBossInf.xml");
private function readBossMessage(textUrl : String):void
{
var loader : URLLoader = new SafeURLLoader();
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.addEventListener(Event.COMPLETE,function (e:Event):void{
getBossInfo(e.target.data);
//读完之后的工作
});
var url : String = ApplicationConfig.ASSETS_PATH1 + textUrl; //常量
loader.load(new URLRequest(url));
}
private function getBossInfo(text:String):void{ //text 在断点可以看到读来的源数据
var xml:XML = new XML(text);
var list:XMLList = xml.child("boss");
for each(var node:XML in list){
var obj : Object = new Object();
obj.name = node["bossname"].toString(); //obj.name可以自己命名 ,后面bossname是节点名字
obj.x = node["x"].toString();
obj.y = node["y"].toString();
obj.map = node["map"].toString();
obj.id = node["bossId"].toString();
obj.time = node["refresh"].toString();
obj.level = node["level"].toString();
obj.continent = node["continent"].toString();
obj.mapname = node["mapname"].toString();
obj.amount = node["amount"].toString();
obj.defylevel = node["defylevel"].toString();
obj.reward = node["reward"].toString();
obj.mapname = buildBossLinkObject(obj);
bossInfors.push(obj);
}
}
private function buildBossLinkObject(source:Object):Object{ //节点中的节点
var object:Object = new Object();
object.id = 0;
object.name = source.mapname;
object.x = source.x;
object.y = source.y;
object.map = source.map;
return object;
}
readBossMessage("assets/ui/daily/activityBossInf.xml");
private function readBossMessage(textUrl : String):void
{
var loader : URLLoader = new SafeURLLoader();
loader.dataFormat = URLLoaderDataFormat.TEXT;
loader.addEventListener(Event.COMPLETE,function (e:Event):void{
getBossInfo(e.target.data);
//读完之后的工作
});
var url : String = ApplicationConfig.ASSETS_PATH1 + textUrl; //常量
loader.load(new URLRequest(url));
}
private function getBossInfo(text:String):void{ //text 在断点可以看到读来的源数据
var xml:XML = new XML(text);
var list:XMLList = xml.child("boss");
for each(var node:XML in list){
var obj : Object = new Object();
obj.name = node["bossname"].toString(); //obj.name可以自己命名 ,后面bossname是节点名字
obj.x = node["x"].toString();
obj.y = node["y"].toString();
obj.map = node["map"].toString();
obj.id = node["bossId"].toString();
obj.time = node["refresh"].toString();
obj.level = node["level"].toString();
obj.continent = node["continent"].toString();
obj.mapname = node["mapname"].toString();
obj.amount = node["amount"].toString();
obj.defylevel = node["defylevel"].toString();
obj.reward = node["reward"].toString();
obj.mapname = buildBossLinkObject(obj);
bossInfors.push(obj);
}
}
private function buildBossLinkObject(source:Object):Object{ //节点中的节点
var object:Object = new Object();
object.id = 0;
object.name = source.mapname;
object.x = source.x;
object.y = source.y;
object.map = source.map;
return object;
}
相关文章推荐
- 详细解读PHP解析XML元素结构的代码示例
- Java线程池框架核心代码解析
- Android pull解析xml数据代码
- mybatis使用xml进行增删改查代码解析
- PHP用SAX解析XML的实现代码与问题分析
- 在java中使用dom4j解析xml(示例代码)
- 简单XML配置与解析(代码示例)
- 由“Jasperrpeorts 4.1.2升级到5.1.2对flex项目的解析”到AS3 带命名空间的XML的操作
- python解析xml模块封装代码
- js解析xml字符串和xml文档实现原理及代码(针对ie与火狐)
- Android - xml动画,识别手势动作,代码抽取,获取手机SIM卡串号,获取联系人数据,开机广播,发送/解析短信,报警音乐
- CodeIgniter 核心代码阅读-URI解析文件URI.php
- 【AS3代码】加载XML数据
- XML解析技术之VTD-XML 简介及代码实例
- XMLDecoder 对xml文档的解析代码!
- xml解析(详细步骤及实例代码作为参考,理论部分请参阅互联网)之 SAXP (更新中)
- 正方教务系统课表成绩抓取核心代码解析,你也能实现超级课程表的功能
- Ajax代码正确却出现“XML解析错误:未找到元素 位置:moz-nullprincipal”错误
- stax解析xml时, 使用栈来处理,不错的代码
- iPhone SDK 解析 xml的官方示例代码