您的位置:首页 > 其它

flash AS3.0 加载读取xml文件

2016-03-31 10:28 447 查看
<info>
<user id="1">
<name>jimluck</name>
<email>luckstarzb@173.com</email>
<age>33</age>
</user>
<user id="2">
<name>john</name>
<email>johnluck@sohu.com</email>
<age>21</age>
</user>
<user id="3">
<name>lucy</name>
<email>lucy@163.com</email>
<age>18</age>
</user>
</info>

var myXml:XML = new XML();

var xml_url:String = "t1.xml";

var myXmlUrl:URLRequest = new URLRequest(xml_url);

var myLoader:URLLoader = new URLLoader(myXmlUrl);

myLoader.addEventListener("complete", xmlLoaded);

function xmlLoaded(event:Event):void

{

myXml =new XML(myLoader.data);

trace("Data loaded.");

trace(myXml.user[0].name);

trace(myXml.user[1].name);

trace(myXml.user[2].name);

//注意多节点时结果:

//<name>jimluck</name>

//<name>john</name>

//<name>lucy</name>

trace(myXml.user.name);

//输出id=1的user节点的name值,结果为jimluck

trace(myXml.user.(@id=="1").name);

//输出name值为john的age节点值,结果为21

trace(myXml.user.(name=="john").age);

}
此另:myXml.user[0]还等同于myXml.child(0),如:

trace(myXml.child(0).name);

trace(myXml.child(0).email);

我们可以通过for each in来遍历xml文档:

for each (var property:XML in myXml.user)

{

var uname:String = String(property.name);

var uemail:String = String(property.email);

total += 1;

trace("用户名"+uname+" 邮件"+
bdd0
uemail)

}

trace("用户数:", total);

结果:

用户名jimluck 邮件luckstarzb@173.com

用户名john 邮件johnluck@sohu.com

用户名lucy 邮件lucy@163.com

用户数: 3
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  xml flash as