AS3 XML节点遍历

时间:2012-04-20 18:21:51

标签: xml actionscript-3 migration nodes xmlnode

我正在从AS2迁移到AS3,并且在从XML获取节点时遇到了麻烦。我能够在AS3中获取(并跟踪)整个XML文件,但希望能够使用firstChild将第一个标记存储为节点,并使用nextSibling遍历标记。但是在AS3中,当我之前的AS2代码实际抓取内容时,firstChild一直空着。我究竟做错了什么? (我无法通过名称调用标签,因为我重复使用多个xml文件的代码块)

var eRoot = exampleXML.firstChild;
while (eRoot != null) {
  //do stuff
  eRoot= eRoot.nextSibling;
}

我的测试XML文件:

<?xml version="1.0" encoding="UTF-8"?>
<content>
    <version>cd</version>
    <lessonlock>~-*~-*</lessonlock>
    <expiryDate>**#*#**##**##**##*##********###*</expiryDate>
    <isSpanish>true</isSpanish>
    <server>http://www.exampleSite.com</server>
</content>

1 个答案:

答案 0 :(得分:2)

那是因为firstChildnextSibling都不作为AS3 XML对象的属性存在。您正在搜索节点<firstChild><nextSibling>

您应该阅读API for XML,更好的是Adobe's guide to E4X