as3 xml操作

XML的创建、获取属性

标签的属性使用@符号来获取,子标签直接.标签名称来获取

//XML的创建
var xml:XML = new XML("<song id='1'><title>What you know?</title><artist>Steve and the flubber blubs</artist><year>1989</year><lastplayed>2006-10-17-08:31</lastplayed></song>");
var xml2:XML = <song><title>What you know?</title><artist>Steve and the flubber blubs</artist><year>1989</year><lastplayed>2006-10-17-08:31</lastplayed></song>;

//XML访问
var id:String = xml.@id;
var title:String = xml.title;

输出

output:
1 What you know?

 XML遍历

var xml3:XML = new XML("<songs><song id='1'><title>What you know?</title><artist>Steve and the flubber blubs</artist><year>1989</year><lastplayed>2006-10-17-08:31</lastplayed></song>"+
					          "<song id='2'><title>Love you for ever</title><artist>Mike</artist><year>2004</year><lastplayed>2006-10-17-08:31</lastplayed></song></songs>");
var songs:XMLList = xml3.song;
//第一种遍历方式
for each(var song:XML in songs){
	trace(song.title);
}
//第二种遍历方式
for(var i:String in songs){
	trace(i + "---" + songs[i].title);
}

输出

What you know?
Love you for ever

 XML过滤

musicList是外部的一个List控件,labelFunc是控制List输出样式的

//XML的过滤
var mySong:XMLList = xml3.song.(title == "What you know?" || artist == "Steve and the flubber blubs");

//加载外部XML文件
var urlRequest:URLRequest = new URLRequest("songs.xml");
var urlLoader:URLLoader = new URLLoader();
urlLoader.load(urlRequest);
urlLoader.addEventListener(Event.COMPLETE,compHandler);

function compHandler(e:Event):void{
	var mySongs:XML = new XML(urlLoader.data);
	musicList.dataProvider = new DataProvider(mySongs);
	musicList.labelFunction = labelFunc;
}

function labelFunc(item:Object):String{
	return item.id + "\t" + item.title + "\t" + item.artist;
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值