欢迎来到天天文库
浏览记录
ID:37488988
大小:60.50 KB
页数:7页
时间:2019-05-24
《AS3中新的XML处理方法》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、AS3中新的XML处理方法-E4X收藏新一篇: 面向对象方法
2、 旧一篇: AS3中的正则表达式AcriontScript之前的版本(从Flash5中的ActionScript开始)有一些处理XML数据的类和方法,但是它们并不是基于ECMAScript标准的。新的ECMA脚本语言规范第4版草稿中定义了一系列新的处理XML数据的类和方法。这些类和方法的集合并命名为E4X("ECMAScriptforXML"),ActionScript3.0包括如下新的E4X类:XML、XMLList、QName和Namespace。E4X类的方法、属性和操作的开法
3、基于以下的目标:·简单--E4X尽可能的使得处理XML数据的代码容易编写并且易于理解。·一致性--E4X的方法于Actionscript的其它部分协调一致。·友好--实用非常好理解的操作符处理XML数据,如点号(.)。注意:为避免与E4X中的新的XML类冲突,原来ActionScript2.0中的XML类在ActionScript3.0被重命名为XMLDocument,为了向前兼容,在ActionScript3.0中遗留下来的类--XML、XMLNode、XMLParser和XMLTag--被包含进了flash.xml包中。新的E4X类是核心类-
4、-使用它们不需要import任何包。初始化XML对象XML对象可以代表一个XML元素、属性、注释、处理指令或文本元素。在ActionScript3.0中我们可以直接将XML数据赋值给变量:varmyXML:XML=burger3.95fries1.45你也可以使用new构造器来从XML数据文本创建一个
5、XML对象实例:varmyXML:XML=newXML("burger3.95")如果XML数据不是格式完好的(如少了结束标签),那么将会出现运行时错误。注意,你也可以将变量实例传入XML数据中:vartagname:String="item";varattributename:String="id";varattributevalue:String=5;varcontent:String="Chicken"
6、;varx:XML=<{tagname}{attributename}={attributevalue}>{content}{tagname}>;trace(x.toXMLString())//Output:Chicken通常,我们的应用是从外部源导入XML数据,如webservice或RSSfeed,以下是一个从远程URL导入XML数据的例子:varmyXML:XML=newXML();varXML_URL:String="http://www.example.com/Sample3.xml";//创建
7、URLRequest。varmyXMLURL:URLRequest=newURLRequest(XML_URL);//使用URLLoader导入数据。var7/7----------------------------myLoader:URLLoader=newURLLoader(myXMLURL);//添加事件监听器,以在XML数据导入完成后处理XML数据。myLoader.addEventListener("complete",xmlLoaded);//导入完成后,创建使用导入的数据创建XML对象functionxmlLoaded(evtOb
8、j:Event){varmyXML:XML=XML(myLoader.data);trace("Dataloaded.");}为了演示代码的清晰性,本文中的大部份示例都第1种直接使用文本的方法创建XML对象。E4X包含一些直观的方法XML数据的操作符(如.和@:用于访问属性)://获取第1个item的menuName值trace(myXML.item[0].menuName);//Output:burger//获取第1个item的id属性值trace(myXML.item[0].@id);//Output:1//获取id属性为2的item的men
9、uName值trace(myXML.item.(@id==2).menuName);//Output:fries//获取menuName
此文档下载收益归作者所有