关闭

as3 解析xml 核心代码

2099人阅读 评论(0) 收藏 举报

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;
  }

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:1116972次
    • 积分:19897
    • 等级:
    • 排名:第409名
    • 原创:818篇
    • 转载:192篇
    • 译文:38篇
    • 评论:577条
    最新评论