XML基础概念

XML

XML的全称是可扩展标记语言。XML是一种结构化的信息处理结构,方便读写,用于标记电子文件使其具有结构性的标记语言,可以用来标记数据、定义数据类型,是一种允许用户对自己的标记语言进行定义的源语言。 XML是标准通用标记语言 (SGML) 的子集,非常适合 Web 传输。XML 提供统一的方法来描述和交换独立于应用程序或供应商的结构化数据。

 

标记-tag

 

节点-node

 

属性-attribute

XML的创建

静态文档

<?xml  version=“1.0”  encoding=“utf-8”?>

<users> <userid>…</userid>…</users>

内嵌代码

var users:XML= <users><userid>…</userid>…</users>

外部加载

URLRequest/URLLoader/

使用类方法

var xusers:XML = new XML(“<users></users>”);

Xusers.appendChild(<userid>…</userid>);

常用运算符:

.     子访问器

@    属性标识符

[]    索引访问符

..    隔代子访问器

{}    以变量的形式当作节点

 

常用的方法:

XML(): 创建新的XML 对象

attribute():返回属性值

attributes():返回属性列表

Child():列出子项

Children():按顺序列出子项

length():子节点数

prependChild():首位插入新项

appendChild():末尾追加新项

insertChildBefore():在指定的参数1之前插入参数2的元素

insertChildAfter():在指定的参数1之后插入参数2的元素

toString():  返回子节点内容

toXMLString():;  返回整个xml

 

 

基本操作:XML>字符串

输出XML

toString();

toXMLString();

输出XMLList

toString();

toXMLString();

输出子节点内容

xmlName.nodeName

xmlName.@attributeName

 

基本操作:字符串—>XML

var str1:String = '<name>flash</name>';

var xml2:XML = new XML(str1);

trace(xml2.toXMLString());

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) {}

 

posted on 2012-10-09 21:20  God is a girl  阅读(170)  评论(0编辑  收藏  举报

导航