zoukankan      html  css  js  c++  java
  • XML3_XML元素和节点的具体解释

    就像一个树状的目录。可以把第一行当作它扎根的“土地”。XML文件是由节点构成的。它的第一个节点为“根节点”。一个XML文件必须有且只能有一 个根节点,其他节点都必须是它的子节点。我们在FLASH里使用XML对象解析XML的时候,this 代表整个XML文件,它的根节点就是 this.firstChild 。 this.firstChild.childNodes 则返回由根节点的所有子节点组成的节点数组。

    XML文件是由节点构成 

    每个子节点又可以有自己的子节点。节点编号由0开始,根节点的第一个子节点为

    this.firstChild.childNodes[0]

    它的子节点数组就是

    this.firstChild.childNodes[0].childNodes 。

    子XML节点的子节点 

    对于XML节点的探究:

    继续深入到没有子节点的单一节点,比如根节点第一个子节点的第二个子节点

    this.firstChild.childNodes[0].childNodes[1]

    它返回的是一个XML对象(Object) 。这里需要特别注意,节点标签之间的数据本身也视为一个节点

    this.firstChild.childNodes[0].childNodes[1].firstChild ,而不是一个值。

    XML节点标签之间为一个节点 

    我们解析XML的最终目的当然就是获得数据的 值:

    this.firstChild.childNodes[0].childNodes[1].firstChild.nodeValue 。

    注意!不是 this.firstChild.childNodes[0].childNodes[1].nodeValue !

    节点名称有时也是我们需要的数据: this.firstChild.childNodes[0].childNodes[1].nodeName 。

    注意比较获得节点名称和节点值的不同。

    XML节点名称和节点值的不同 

    除了作为子节点,数据还可以作为节点属性。节点属性写在节点标签内部:<节点 属性1="属性值" 属性2="属性值"...... >节点值 </节点>。

    如果数据全作为属性而没有节点值,则可以写成 <节点 属性="属性值" /> 的形式,而不用写成 <节点 属性="属性值"> 。 注意节点必须关闭,写成 <节点 属性="属性值"> 就不对了。

    节点的所有属性返回一个通用对象(Object),比如根节点第六个子节点的第三个子节点的所有属性为:

    this.firstChild.childNodes[5].childNodes[2].attributes 。

    获得其中的“地址”属性:

    this.firstChild.childNodes[5].childNodes[2].attributes.地址 。

    XML节点的所有属性返回一个通用对象 

    比较而言,数据作为属性的方式更好。因为文件相对比较小,而且避免深入更多层子节点,解析速度更快。

  • 相关阅读:
    C#深复制和浅复制
    C#程序设计六大原则记录
    C#异步
    线程同步
    线程基础
    委托,事件
    XmlSerializer
    C#接口
    C#封装
    C#多态
  • 原文地址:https://www.cnblogs.com/hyli/p/3623814.html
Copyright © 2011-2022 走看看