编码处,要选择"Unicode"。
2、下面,就对里面的各项值进行解读。 读取整个XML文件的方法: 在刚才的XML的同级目录下新建一FLA文件,然后在场景中放置一TextArea组件。并赋实例名“my_TextArea”, 然后在第一帧中添加如下代码:
var my_XML:XML=new XML(); System.useCodepage=true; var my_TextArea:mx.controls.TextArea; my_XML.load("goods.xml") my_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].nodeName; 如果要读取"1条": this.firstChild.childNodes[1].childNodes[0].nodeValue; 如果要读取裤子的品牌: this.firstChild.childNodes[1].attributes.品牌;
将XML读取进LIST组件中:
System.useCodepage = true; var my_TextArea:mx.controls.TextArea; var my_List:mx.controls.List; var my_XML:XML = new XML(); my_XML.ignoreWhite = true; my_XML.load("shopping.xml"); my_XML.onLoad = function(ok:Boolean) { if (ok) { var childnodes = this.firstChild.childNodes; for (i=0; i<childnodes.length; i++) { my_List.addItem({label:childnodes.nodeName}); } } else { my_TextArea.text += "加载失败"; } };
第一个节点:firstChild: 用法:this.firstChild; 最后一个节点:lastChild 用法:this.firstChild; 兄弟节点:nextSibling: 用法:this.firstChild.childNodes[0].nextSibling; 另一个兄弟节点:previousSibling: 用法:this.firstChild.childNodes[0].previousSibling; 区别:nextSibling是朝后,而previousSibling是当前之前; 父类节点:parentNode: 用法:this.firstChild.parentNode;
上述所有实例演示: http://www.taoshaw.com/taoshaw/study/LoadXml/LoadXML.swf
源文件下载:loadXML.rar
|