2

我正在阅读动作脚本中的 xml 文件。

我需要遍历每个名​​为“entry”的节点,如下图所示:-

谁能帮我 ?

在此处输入图像描述

我正在尝试下面的代码。但它不起作用:-

var categoryList:XMLList = x.feed.@entry;

                for each(var category:XML in categoryList)
                {
                    trace(category.@name);

                    for each(var item:XML in category.item)
                    {
                        trace("  "+item.@name +": "+ item);
                    }
                }

“入口”节点也有一些内部节点,我也想读取那些节点。

谢谢

4

3 回答 3

4

此 XML 正在使用 namespace http://www.w3.org/2005/Atom,因此您必须考虑到这一点:

var n:Namespace = new Namespace("http://www.w3.org/2005/Atom");
var categoryList:XMLList = x.n::entry;

更新: 为了访问子节点,您需要继续使用命名空间

for each(var category:XML in categoryList)
{
    // this traces the name of the author
    trace(category.n::author.n::name.toString());
}
于 2014-07-08T13:29:14.283 回答
2

更好的是:

var n:Namespace = new Namespace("http://www.w3.org/2005/Atom");
default xml namespace = n;
var categoryList:XMLList = x.entry;//no namespace type access
//etc
default xml namespace = null;
于 2014-07-08T17:15:35.167 回答
1

将声明更改categoryList为:

var categoryList:XMLList = x.entry;

它现在应该遍历entry节点。

于 2014-07-08T13:11:41.740 回答