精通Flex 3.0――4.6.6 遍历XML节点 收藏
由于XML是一个树型结构的文档,所以可以通过指定层次进行循环访问。在遍历的过程中可以采用简单的for循环方式,也可以使用for..in的循环方式。
1.for循环方式
在使用简单的for循环方式的时候需要访问XML对象的length属性。具体使用方法如下代码所示。
var flexXML:XML=
<RIA>
<FlashPlayer>
<Flash>
<Name>Flash CS3</Name><Version>9</Version>
</Flash>
<Flash>
<Name>Flash 8</Name><Version>8</Version>
</Flash>
<Flash>
<Name>Flash 2004MX</Name><Version>7</Version>
</Flash>
</FlashPlayer>
</RIA>
var i:int;
for(i=0;i<flexXML.child("FlashPlayer").child("Flash").length();i++)
{ trace(flexXML.child("FlashPlayer").child("Flash")[i].Name+":"+flexXML.child("FlashPlayer").child("Flash")[i].Version);
}
在上面的代码中flexXML.child("FlashPlayer").child("Flash").length()访问到的是flexXML对象Flashplayer对象中所有Flash节点的个数。上面代码输出结果如下所示。
Flash CS3:9
Flash 8:8
Flash 2004MX:7
2.for..in循环方式
通过这种访问方式可以遍历到XML中,所有想要遍历的数据。这样在进行Flex应用开发的时候。可以使用服务段传输过来的XML字符串或者XML对象作为数据的载体。对于上面代码中的XML对象可以使用for..in的循环方式进行遍历XML对象。方式如下所示。
for(var name:String in flexXML.child("FlashPlayer").child("Flash"))
{ trace(flexXML.child("FlashPlayer").child("Flash")[name].Name+":"+flexXML.child("FlashPlayer").child("Flash")[name].Version);
}
输出结果与使用简单的for循环输出的内容完全一致。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/Flex_program/archive/2008/04/28/2338981.aspx
分享到:
相关推荐
XML解析的方法有很多,如访问节点、查询节点、遍历XML树等。例如,如果XML数据结构如下: ```xml <item id="1">Item 1 <item id="2">Item 2 ``` 我们可以这样访问和提取数据: ```actionscript for each (var...
<?xml version="1.0" encoding="utf-8"?> creationComplete="service.send()" > <![CDATA[ import mx.controls.Alert; import mx.rpc.events.FaultEvent; import mx.collections.ArrayCollection; ...
在`handleResult`函数中,我们把返回的XML字符串转换为XML对象,使用XPath表达式或属性访问语法筛选出需要的节点,然后遍历XMLList获取每个节点的属性或子节点值。 在实际应用中,你可能还需要处理可能出现的错误,...
总结,Flex解析XML文件主要通过XML和XMLList类,它们提供了丰富的API来操作XML数据。理解这些概念和方法,将有助于你在Flex应用中有效地处理和展示XML数据。无论是简单的数据展示还是复杂的交互逻辑,Flex都能通过...
3. **遍历XML节点**:可以通过循环遍历XML节点,提取所需信息。例如,遍历`items`并打印每个`item`的值: ```actionscript for each (var item:XML in items) { trace(item.toString()); } ``` 4. **XML与对象...
解析XML数据通常涉及到访问XML节点、获取属性值和遍历XML树。例如,我们可以通过节点名和属性名来访问特定的数据: ```actionscript var itemName:String = xml.root.item[0]; var itemAttrValue:String = xml.root...
- 遍历XML节点: ```actionscript for each (var item:XML in yourXMLList) { trace(item.name()); } ``` 6. **XML写入**: - 写入XML到本地文件时,可以使用`FileStream`的`writeUTFBytes()`方法。确保文件...
3. 遍历XML节点:接着,我们遍历`xml.children()`,这将返回XML文档中的所有顶级元素(在这个例子中是`dataSource`元素)。对于每个元素,我们创建一个新的`dataSource`节点,并将相应的属性赋值给它,如`@type`、`...
3. **动态数据处理**:Flex允许根据JSON数据动态创建UI组件,如通过遍历JSON对象并创建相应的`<mx:Label>`或`<mx:TextInput>`。 【结合Java服务器】 1. **服务器端通信**:Flex应用程序可以使用HTTPService或...
在Flex中,可以使用XML的elementsByTagName()方法或children()属性来获取节点的所有子节点,然后通过递归函数遍历这些子节点,实现无限级别的查找。如果找到匹配的节点,可以返回该节点及其所有子节点,这就是“若...
### Flex与XML操作详解 #### 一、E4X与ActionScript 3.0的集成 E4X(ECMAScript for XML)是ECMAScript标准的一个扩展,它被引入到ActionScript 3.0中,极大地简化了XML数据处理的过程。在Flash 5时,ActionScript...
在Flex开发中,`URLLoader` 是一个非常重要的类,用于加载远程数据,如XML、JSON等。在本示例中,它被用来从服务器获取XML文件并将其内容解析为XML对象,以便在应用程序中使用。`Flex` 是Adobe开发的一个开放源代码...
2. **遍历XML文档**:可以通过多种方式遍历XML文档,如深度优先遍历(Depth-First Traversal)或宽度优先遍历(Breadth-First Traversal)。在Flex中,通常使用AS3(ActionScript 3)提供的XML类来进行遍历操作。 #...
- 遍历DataTable中的每一行数据,创建对应的XML节点。 - 使用`CreateElement`、`CreateAttribute`等方法构造节点及其属性。 - 通过`AppendChild`方法添加子节点至父节点。 4. **保存XML文件**: - 最终将构建好...
在Flex开发中,XML是一种常见的数据格式,用于存储和传输数据。XML(eXtensible Markup Language)具有自描述性,结构清晰,易于解析,因此在Flex应用中常用于实现数据的增删改查功能。以下我们将深入探讨如何在Flex...
这个方法会遍历XML的指定标签并创建一个`BaseXmlModel`的集合。 - 对于`Node`,创建`BaseNodeContainer`实例,初始化并添加到容器中,同时在`nodeMap`中存储以ID为键的映射关系。 - 对于`Line`,根据起始和结束ID...
// 遍历XML节点,添加缩进 // ... return result; } } ``` 5. **动态XML生成**:在Flex应用中,常常需要根据运行时的数据动态生成XML。例如,从服务器获取数据后,可以将其转换为XML,然后展示在Flex界面中: ``...
接着,我们遍历ArrayCollection中的每个元素,将其包装为`<fruit>`节点,并添加到XML文档中。最后,我们将整个XML文档转换为字符串并输出。 这个实例对于理解数据转换非常有用,特别是在处理与服务器之间的数据交换...
在构建一个基于Flex的在线考试系统时,XML文件通常被用作存储试题和答案的数据格式。这是因为XML(Extensible Markup Language)具有结构清晰、易于解析和跨平台的优点,非常适合存储和传输复杂的数据结构,比如考试...