"开头,以及一个"/>"结尾,其中开头部分需申明XML的版本,如:version="1.0",也应包含一个关于编码的声明:“encoding=""> "开头,以及一个"/>"结尾,其中开头部分需申明XML的版本,如:version="1.0",也应包含一个关于编码的声明:“encoding="" />
欢迎来到天天文库
浏览记录
ID:40756277
大小:21.42 KB
页数:5页
时间:2019-08-07
《XML在与FLASH交互简易教程》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、一、书写标准的XML需要注意以下几点:1、一个标准的XML文档必须要在第一行以""开头,以及一个"/>"结尾,其中开头部分需申明XML的版本,如:version="1.0",也应包含一个关于编码的声明:“encoding="utf-8"”;2、XML要求所有的标签必须在文档结束之前被闭合,如果标签中包含内容,则必须写成“<标签名>内容标签名>"的格式,如果内容为空,则应写在标签名>的格式;即,后面必须有这种格式的。3、每个XML都有有一个根元素,也叫根节点。4、节点有节
2、点值和属性。5、XML的节点值如果出现与XML标签关键字一样的字符,XML将会无法解析文档,比如,某个节点值如果是一个大于或者小于号,就会让解释器产生一个错误,二、在FLASH中创建一个简单的实例://创建一个新的XML类实例varmy_XML:XML=newXML();//创建一个TextArea组件,用于显示此XML内容varmy_TextArea:mx.controls.TextArea;//加载外部XML文件//如果加载的XML文件在该FLASH目录的上面,就用../my_xml.xml,如果在下
3、面呢,就用aaa/my_xml.xml,这样的.my_XML.load("my_xml.xml");//为load函数定义onLoad函数---此处是必须的。只有当加载成功后,才能控制XML。否则不能。my_XML.onLoad=function(ok:Boolean){if(ok){my_TextArea.text+=this;}else{my_TextArea.text+="加载失败..."}}//勿略空白:my_XML.ignoreWhite=true;三、关于FLASH解析XML详解,说白了,也就
4、是对节点的读取。首先,来看看这幅图,稍微加点印象。下面,我将对XML文件的解析方面做详细的介绍。为了便于讲解,在此,我举一个简单的例子。1、新建一个记事本文件,在里面输入如下内容:<衬衣颜色="白色"品牌="雅戈尔">1件衬衣><裤子颜色="深蓝"品牌="王子裤">2件裤子><鞋子颜色="黑色"品牌="红蜻蜓">3双鞋子><总花费金额><打的费>50元打的费><货物金>1000元货物金>总花费金额>购买物品
5、>然后保存为"goods.xml",注意,在编码处,要选择"Unicode"。2、下面,就对里面的各项值进行解读。读取整个XML文件的方法:在刚才的XML的同级目录下新建一FLA文件,然后在场景中放置一TextArea组件。并赋实例名“my_TextArea”,然后在第一帧中添加如下代码:varmy_XML:XML=newXML();System.useCodepage=true;varmy_TextArea:mx.controls.TextArea;my_XML.load("goods.xml")my_
6、XML.onLoad=function(ok:Boolean){if(ok){my_TextArea.text+=this;}else{my_TextArea.text+="加载失败"}}按CTRL+ENTER测试,即可以看效果。首先,我们来看看如何对XML中的节点名称或者节点属性进行读取呢?比如,我们要读取如例子中的"购买物品"这几个字符,该如何操作呢?我们使用如下语句:this.firstChild.nodeName;如果要读取"衬衣":this.firstChild.childNodes[0].no
7、deName;如果要读取"1条":this.firstChild.childNodes[1].childNodes[0].nodeValue;如果要读取裤子的品牌:this.firstChild.childNodes[1].attributes.品牌;将XML读取进LIST组件中:System.useCodepage=true;varmy_TextArea:mx.controls.TextArea;varmy_List:mx.controls.List;varmy_XML:XML=newXML();my_
8、XML.ignoreWhite=true;my_XML.load("shopping.xml");my_XML.onLoad=function(ok:Boolean){ if(ok){ varchildnodes=this.firstChild.childNodes; for(i=0;i
此文档下载收益归作者所有