·您当前的位置:首页 > 技术教程 > AS2与AS3技术 >

[AS3]as3.0操作xml详细分析原代码示例(3)

时间:2012-08-19 18:13CuPlayer
XML的高级操作 常用的操作上面已经介绍的很清楚了。高级操作则是留给对XML应用更深的兄弟们。 几点注意: 1.在AS3.0中, XML类的ignoreWhitespace默认为true。 2.AS3.0支持对comments的直接操作。但默认: XML.ignor

  XML的高级操作

  常用的操作上面已经介绍的很清楚了。高级操作则是留给对XML应用更深的兄弟们。

  几点注意:
1.在AS3.0中, XML类的ignoreWhitespace默认为true。
2.AS3.0支持对comments的直接操作。但默认:

  1. XML.ignoreComments = false;  
  2. var kingdaXML:XML =  
  3. <item> 
  4. <!-- comment 1--> 
  5. <!-- comment 2--> 
  6. </item>;  
  7. trace(kingdaXML.toXMLString()); //默认为true时,不会显示comment的 

  访问comment用

  trace(kingdaXML.comments()[1].toXMLString());

  3.XML支持克隆。

  使用copy()可以得到一份现有XML的值拷贝。

  var kingdaCopy:XML = kingdaXML.copy();

  对kingdaCopy操作就不会影响kingdaXML对象了。

  4.极有用的descendants函数返回一个XMLList对象,包括所有的子节点。
  设ignoreComments = false;和ignoreProcessingInstructions = false后,连comments和process instructions也会包含在这个XMLList对象中。

  运用示例如下:

  1. XML.ignoreComments = false;  
  2. var xml:XML =  
  3. <body> 
  4. <!-- comment --> 
  5. text1  
  6. <a> 
  7. <b>text2</b> 
  8. </a> 
  9. </body>;  
  10. trace(xml.descendants("*").length()); // 5  
  11. trace(xml.descendants("*")[0]); // // <!-- comment --> 
  12. trace(xml.descendants("*")[1].toXMLString()); // text1  
  13. trace(xml.descendants("a").toXMLString()); // <a><b>text2</b></a> 
  14. trace(xml.descendants("b").toXMLString()); // <b>text2</b> 

  还有太多的XML有用操作功能了(如对namespace的操作)。用到时再去翻参考书吧。
  以上的介绍可以满足绝大部分运用了。

  对了AS2.0已有的XML类,在3.0中变成了XMLDocument类,使用方法不变。便于AS2.0程序移植。其余不推荐。
 

热门文章推荐

请稍候...

保利威视云平台-轻松实现点播直播视频应用

酷播云数据统计分析跨平台播放器