用as3解析带有命名空间的xml
由 marco 在 十一月 23rd, 2009 发表于 原创文章 – 评论很多人都不知道XML标签里面的冒号代表什么含义,用通常的办法不能解析出带冒号的XML。那冒号正是XML的一个重要的特性–Namespace,更多资料请去Google,我这时只说怎么用as3来解析带有namespace的XML;
testXml:
<fx:XML id="textXml" xmlns="http://www.beasy.org" xmlns:beasy="http://blog.beasy.org"> <root> <website>http://www.beasy.org</website> <beasy:name>Marco</beasy:name> <beasy:email>***@gmail.com</beasy:email> </root> </fx:XML>
上面是一个xml变量, 我现在要获得website,name和email;
注意虽然前面没有”*:”这样的符号,也看看根节点上的命名空间定义xmlns=”http://beasy.org”,这一名就定义了一个空注解的命名空间.虽然前面没有符号, 但节点也在命名空间限制内的,想要获取他的值要这样写:
var emptyNS:Namespace = testXml.namespace(""); trace( testXml.emptyNS::website ); //输出:www.beasy.org var beasyNS:Namespace = testXml.namespace("by"); trace( testXml.beasyNS::name ); //输出:marco trace( testXml.beasyNS::email ); //输出:***@gmail.com
