XMLDocument与XML的区别和联系
2012-05-29 09:55
211 查看
一、构造方法有点不同;
1,xml可以这样构造:
var xml:XML=
<root>
<name sex="男" nation="汉族">
<f>张</f>
<l>三</l>
</name>
<name sex="男" nation="佤族">
<f>李</f>
<l>四</l>
</name>
<name sex="女" nation="汉族">
<f>王</f>
<l>五</l>
</name>
</root>
XMLDocument则不可以这样构造。
2,如果载入外部数据或根据字符串生成实例,xml可以直接把字符串传进构造函数的参数里。XMLDocument则不可以,必须解析:
myXD.ignoreWhite=true;
myXD.parseXML(str)
当然:parseXML("这里面的参数也可以是xml");
二、trace()时,显示的结构不一样(或许这并不是主要的);
XMLDocument与字符串形式显示如:
trace(xmlDocument):
<root><name sex="男" nation="汉族"><f>张</f><l>三</l></name><name sex="男" nation="佤族"><f>李</f><l>四</l></name><name sex="女" nation="汉族"><f>王</f><l>五</l></name></root>
XML以结构化的形式显示如:
trace(xml);
<root>
<name sex="男" nation="汉族">
<f>张</f>
<l>三</l>
</name>
<name sex="男" nation="佤族">
<f>李</f>
<l>四</l>
</name>
<name sex="女" nation="汉族">
<f>王</f>
<l>五</l>
</name>
</root>
三、访问节点的方法不同:
1,XMLDocument必须用firstChild方法逐级定位到相应节点。
方法一:输出某节点下的第一个节点:
trace(xmlD.firstChild.firstChild.firstChild.firstChild)//输出:张;
XMLDocument与方法节点相关的属性还有:lastChild parentNode nextSibling previousSibling
方法二:输出某节点的所有节点:
trace(xmlD.firstChild.firstChild.childNodes)//输出:<f>张</f>,<l>三</l>
2,xml可以用(.)点操作符或(..)后代存取符直接定位到节点上。
也可以用children()方法访问当前节点的的所有子节点和用children()[索引]方法访问当前节点下的某一个子节点。
trace(xml..f[0]);//输出:张:类型:XML 输出标签为f的第一个节点。
trace(xml..f)//输出:类型:XMLList 输出标签为f的所有节点。
<f>张</f>
<f>李</f>
<f>王</f>
trace(xml.name.children());//输出name下的所有节点,不管标签是f还是l还是其它。
补充说明:xml.name与xml.name.children()的区别:
xml.name:输出标签名为name的所有节点。
xml.name.children():输出标签名为name的所有子节点。
注意:children()是方法而不是属性,ADOBE是出于这样的考虑:防止把children当作XML文档下的一个节点处理。另:也可以在节点前加一个child 作用是一样的,相当于as3里面的类型转换,但是,使用了child就不能使用后代存取器(..)
四、访问属性的方法不同:
1,XMLDocument用 attributes.属性名访问属性:
需要说明的是attributes获得的是当前节点的所有属性而非所有节点的所有属性。
2,XML 用 @属性名,attribute()和attributes()方法访问属性。注意,在XMLDocumentj里attribtes是属性而不是方法;
五、访问节点名:既:标签,元素(element)
1,XMLDocument用 nodeName访问节点名。
2,XML用name():含有命名空间 或 localName():不包含命名空间 访问节点名。如:
trace(xml.children()[0].localName())//输出:name
六、添加子项:
都使用appendChild()方法;
xml.appendChild("参数是一个xmllist");
xmlD.appendChild("参数是一个节点")//其中,标签节点可以appendChild文本节点,级级添加。
七、其它注意事项。
XMLDocument没有toXMLString()方法。
1,xml可以这样构造:
var xml:XML=
<root>
<name sex="男" nation="汉族">
<f>张</f>
<l>三</l>
</name>
<name sex="男" nation="佤族">
<f>李</f>
<l>四</l>
</name>
<name sex="女" nation="汉族">
<f>王</f>
<l>五</l>
</name>
</root>
XMLDocument则不可以这样构造。
2,如果载入外部数据或根据字符串生成实例,xml可以直接把字符串传进构造函数的参数里。XMLDocument则不可以,必须解析:
myXD.ignoreWhite=true;
myXD.parseXML(str)
当然:parseXML("这里面的参数也可以是xml");
二、trace()时,显示的结构不一样(或许这并不是主要的);
XMLDocument与字符串形式显示如:
trace(xmlDocument):
<root><name sex="男" nation="汉族"><f>张</f><l>三</l></name><name sex="男" nation="佤族"><f>李</f><l>四</l></name><name sex="女" nation="汉族"><f>王</f><l>五</l></name></root>
XML以结构化的形式显示如:
trace(xml);
<root>
<name sex="男" nation="汉族">
<f>张</f>
<l>三</l>
</name>
<name sex="男" nation="佤族">
<f>李</f>
<l>四</l>
</name>
<name sex="女" nation="汉族">
<f>王</f>
<l>五</l>
</name>
</root>
三、访问节点的方法不同:
1,XMLDocument必须用firstChild方法逐级定位到相应节点。
方法一:输出某节点下的第一个节点:
trace(xmlD.firstChild.firstChild.firstChild.firstChild)//输出:张;
XMLDocument与方法节点相关的属性还有:lastChild parentNode nextSibling previousSibling
方法二:输出某节点的所有节点:
trace(xmlD.firstChild.firstChild.childNodes)//输出:<f>张</f>,<l>三</l>
2,xml可以用(.)点操作符或(..)后代存取符直接定位到节点上。
也可以用children()方法访问当前节点的的所有子节点和用children()[索引]方法访问当前节点下的某一个子节点。
trace(xml..f[0]);//输出:张:类型:XML 输出标签为f的第一个节点。
trace(xml..f)//输出:类型:XMLList 输出标签为f的所有节点。
<f>张</f>
<f>李</f>
<f>王</f>
trace(xml.name.children());//输出name下的所有节点,不管标签是f还是l还是其它。
补充说明:xml.name与xml.name.children()的区别:
xml.name:输出标签名为name的所有节点。
xml.name.children():输出标签名为name的所有子节点。
注意:children()是方法而不是属性,ADOBE是出于这样的考虑:防止把children当作XML文档下的一个节点处理。另:也可以在节点前加一个child 作用是一样的,相当于as3里面的类型转换,但是,使用了child就不能使用后代存取器(..)
四、访问属性的方法不同:
1,XMLDocument用 attributes.属性名访问属性:
需要说明的是attributes获得的是当前节点的所有属性而非所有节点的所有属性。
2,XML 用 @属性名,attribute()和attributes()方法访问属性。注意,在XMLDocumentj里attribtes是属性而不是方法;
五、访问节点名:既:标签,元素(element)
1,XMLDocument用 nodeName访问节点名。
2,XML用name():含有命名空间 或 localName():不包含命名空间 访问节点名。如:
trace(xml.children()[0].localName())//输出:name
六、添加子项:
都使用appendChild()方法;
xml.appendChild("参数是一个xmllist");
xmlD.appendChild("参数是一个节点")//其中,标签节点可以appendChild文本节点,级级添加。
七、其它注意事项。
XMLDocument没有toXMLString()方法。
相关文章推荐
- Json和xmlpullparser解析的联系和区别
- 学习笔记(1) - XML HTML XHTML的区别与联系
- HTML、XML和XHTML的联系与区别
- 有关RDF、RSS、XML区别和联系
- web.xml 中的servlet /filter /listener区别与联系 及interceptor解析
- JSON与XML的区别与联系
- XML与HTML的联系与区别
- HTML+DOM与XML+DOM之间的区别与联系
- 【Asp.Net】Xml中xmlDocument,xmlNode和xmlElement的区别
- 有关RDF、RSS、XML区别和联系
- XML和HTML的区别和联系
- DOM Document Node Element Attr 的联系与区别汇总
- 有关RDF、RSS、XML区别和联系
- C++ builder 中的 XMLDocument 类详解(18) NodeValue 与 NodeName 的读写区别
- html、xhtml、xml三者之间的联系与区别
- XML与HTML的联系与区别
- struts.devMode和struts.configuration.xml.reload区别和联系
- JSON与XML的区别与联系
- XML、RDF和RSS的联系和区别(zz)
- 【Web】XML与HTML的区别与联系