XML查询—条件检索

节点查询(String):

xmlName.nodeName.(subNodeName==‘value’)

属性查询:

xmlName.nodeName.(@attributeName==‘value‘) 

XML查询—数据访问-节点:

子节点数据访问——节点索引值(与数组同)

xmlName.nodeName[i]

孙节点数据访问

xmlName.nodeName[i].elementName

Child()方法——返回有序的XMLList对象

xmlName.child('nodeName')

xmlName.child('nodeName')[i].child(‘elementName’)

XML查询——数据访问-属性

@attributeName

xmlName.nodeName[i].@attributeName

attribute(‘attributeName’)

xmlName.nodeName[i].attribute(‘attributeName‘)

trace(xml1.node[2]);

Attributes()方法:返回给定的XML对象的属性值列表

var xml:XML=<example id='123' color='blue'></example>;

xml.attributes()[i].name()——i=0à”id”; i=1à”color”

删除XML节点元素

删除节点

delete  xmlName.nodeName[i];

删除子节点

delete  xmlName.nodeName[i].elementName;

删除属性

delete  xmlName.nodeName[i].@attributeName;

删除全部节点

var nodes:XMLList = xmlName.nodeName.(@attributeName==‘value');

var len:uint = nodes.length();

for(var i:uint=0; i<len; i++){

       delete xml.nodes[0];

}

修改XML节点元素

修改节点内容

xmlName.nodeName[i]=‘someValue’;

修改子节点

xmlName..subNodeName[i]=‘someValue’

修改属性

xmlName.nodeName[i].@attributeName=‘someValue’;

增加XML节点元素

把结点加到最前面

xmlName.prependChild(newNode)

把结点加到最后面

xmlName. appendChild(newNode)

插入到指定节点之前

xmlName. insertChildBefore(xmlName.nodeName[i], newNode)

插入到指定节点之后

xmlName.insertChildAfter(xmlName.nodeName[i], newNode)

加载外部XML文件

定义网址请求变量(对象)

var req:URLRequest=new URLRequest("sites.xml")

定义网址数据容器

var loader:URLLoader=new URLLoader();

加载数据

loader.load(req);

侦听加载过程事件

loader.addEventListener(flash.events.ProgressEvent.PROGRESS,loading_fn);

侦听加载完成事件

loader.addEventListener(Event.COMPLETE,do1_fn);

处理过程事件

function loading_fn(e) {}

处理完成事件

function do1_fn(e) {}

 1 // xml文件所在的路径
 2 var xmlloader:String = "xml.xml";
 3 //根据路径创建URLRequest类的实例
 4 var url:URLRequest = new URLRequest(xmlloader);
 5 //创建加载xml的实例
 6 var loadxml:URLLoader = new URLLoader (url);
 7 //注册加载过程事件侦听器
 8 loadxml.addEventListener(ProgressEvent.PROGRESS,xmlloaded);
 9 //注册加载完成侦听器
10 loadxml.addEventListener(Event.COMPLETE,xmlloaderd);
11 //定义加载过程侦听器
12 function xmlloaded (e:ProgressEvent):void
13 {   //得到加载xml的实例
14     var tar.URLLoader  = e.target;
15     //计算加载字节的百分比
16     var bytes.Number = tar.bytesLoader/tar.bytesTotal;\
17     //输出百分比
18     trace(bytes.toFixed(2));
19 }
20 //定义加载完成侦听器
21 function xmlloaderd(e:Event):void
22 {
23     trace("加载成功");
24 }