刪除單一子節點:
var xml:XML =
<xml>
<node>1</node>
<node>2</node>
<node>3</node>
<node>4</node>
<node>5</node>
<node>6</node>
</xml>;
delete xml.*[0];
trace(xml.toXMLString());
delete xml.node[0];
trace(xml.toXMLString());
delete xml["node"][0];
trace(xml.toXMLString());
// Ticore's Blog - http://ticore.blogspot.com/
刪除全部子節點:
var xml:XML =
<xml>
<node>1</node>
<node>2</node>
<node>3</node>
<node>4</node>
<node>5</node>
<node>6</node>
</xml>;
delete xml.*;
trace(xml.toXMLString());
// Ticore's Blog - http://ticore.blogspot.com/
var xml:XML =
<xml>
<node>1</node>
<node>2</node>
<node>3</node>
<node>4</node>
<node>5</node>
<node>6</node>
</xml>;
delete xml["node"];
trace(xml.toXMLString());
用篩選運算子刪除所有 Text 節點:
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;
var xml:XML =
<xml>
<node>
<n />
<? ins ?>
text1
<node>text2</node>
</node>
text3
</xml>;
var texts:XMLList = xml..*.(nodeKind() == "text" ?
delete parent().*[childIndex()] : false);
trace(xml.toXMLString());
trace(texts.toXMLString());
// Ticore's Blog - http://ticore.blogspot.com/
利用 prototype function 刪除所有 Text 節點:
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;
var xml:XML =
<xml>
<node>
<n />
<? ins ?>
text
<node>text</node>
</node>
text
</xml>;
XML.prototype.process = function():void{
if (this.nodeKind() == "text") {
delete this.parent().*[this.childIndex()];
}
};
xml..*.(process());
trace(xml.toXMLString());
刪除第一層、第二層 Text 子節點:
XML.ignoreComments = false;
XML.ignoreProcessingInstructions = false;
var xml:XML =
<xml>
<node>
<n />
<? ins ?>
text
<node>text</node>
</node>
text
</xml>;
XML.prototype.process = function():void{
if (this.nodeKind() == "text") {
delete this.parent().*[this.childIndex()];
}
};
xml.*.(process());
xml.*.*.(process());
trace(xml.toXMLString());
From http://vsheyan.blog.163.com/blog/static/1038150682009218112248734/
分享到:
相关推荐
3. **添加XML节点**: 要向XML对象添加新节点,可以直接调用XML对象的appendChild方法。例如,添加新的item节点: ```actionscript var newItem:XML = <item id="3">Item 3; xmlData.appendChild(newItem); ...
- 遍历XML节点: ```actionscript for each (var item:XML in yourXMLList) { trace(item.name()); } ``` 6. **XML写入**: - 写入XML到本地文件时,可以使用`FileStream`的`writeUTFBytes()`方法。确保文件...
在Flex界面中添加HTTPService组件,配置其URL以指向服务器上的XML数据源,然后设置result事件监听器,以便在接收到数据时执行解析操作。 例如,以下是一个简单的HTTPService使用示例: ```xml <![CDATA[ import...
// E4X提供了一种简洁的方式来访问XML节点 var nodeValue:String = xml.someElement.@attribute; // 处理解析后的XML数据 } ``` E4X的优势在于其直观且强大的语法,但它的性能可能略逊于XMLLoader,尤其是处理...
解析XML数据通常涉及到访问XML节点、获取属性值和遍历XML树。例如,我们可以通过节点名和属性名来访问特定的数据: ```actionscript var itemName:String = xml.root.item[0]; var itemAttrValue:String = xml.root...
5. **XML表达式**:Flex支持使用XML表达式(XPath-like)来访问特定的XML节点。例如,获取第一个`item`的值: ```actionscript var firstItemValue:String = xmlData.item[0].toString(); ``` 6. **处理XML事件*...
总结,Flex解析XML文件主要通过XML和XMLList类,它们提供了丰富的API来操作XML数据。理解这些概念和方法,将有助于你在Flex应用中有效地处理和展示XML数据。无论是简单的数据展示还是复杂的交互逻辑,Flex都能通过...
在Flex中,XMLList类是XML类的一个子类,专为处理XML节点列表而设计。当XML文档中某个节点有多个子节点时,通常会返回一个XMLList对象。我们可以使用XPath表达式或属性访问语法来访问XMLList中的节点。 接下来,...
2. 修改XML对象:使用E4X语法,可以方便地添加、删除或修改XML节点。比如添加一个子节点: ```actionscript newXml.appendChild(新节点); ``` 3. 将XML对象转换为字符串:要将XML对象保存为文件,首先需要将其转换为...
在Flex中,我们可以利用XML对象的appendChild()方法将一个XML节点添加到另一个XML节点的末尾,从而实现XML文档的合并。同时,还可以使用XMLList的concat()方法将多个XMLList对象组合成一个新的XMLList。 接下来,...
标题:Flex XML生成Tree源码 描述:此代码示例展示了如何在Flex应用程序中使用XML数据来动态生成一个树形结构(Tree)。Flex是Adobe Systems开发的一款开源框架,用于构建跨平台的桌面和移动设备应用。这段代码通过...
// 遍历XML节点,添加缩进 // ... return result; } } ``` 5. **动态XML生成**:在Flex应用中,常常需要根据运行时的数据动态生成XML。例如,从服务器获取数据后,可以将其转换为XML,然后展示在Flex界面中: ``...
为了实现递归绑定,可以自定义一个TreeItemRenderer,该渲染器知道如何根据XML节点的子节点创建新的TreeItems。 ```actionscript var tree:Tree = new Tree(); tree.dataProvider = xml.children(); tree....
在Flex开发中,`URLLoader` 是一个非常重要的类,用于加载远程数据,如XML、JSON等。在本示例中,它被用来从服务器获取XML文件并将其内容解析为XML对象,以便在应用程序中使用。`Flex` 是Adobe开发的一个开放源代码...
本文将深入探讨XML节点和属性的访问,以及在Flex中关于数据绑定的一些特殊性。 首先,我们要理解XML节点和属性的访问方式。在AS3(ActionScript 3)中,XML对象可以通过点号(.)、双点号(..)和@符号来操作。点号...
- 遍历DataTable中的每一行数据,创建对应的XML节点。 - 使用`CreateElement`、`CreateAttribute`等方法构造节点及其属性。 - 通过`AppendChild`方法添加子节点至父节点。 4. **保存XML文件**: - 最终将构建好...
3. 遍历XML节点:接着,我们遍历`xml.children()`,这将返回XML文档中的所有顶级元素(在这个例子中是`dataSource`元素)。对于每个元素,我们创建一个新的`dataSource`节点,并将相应的属性赋值给它,如`@type`、`...
使用点符号`.`和属性符号`@`可以直接访问和修改XML节点及其属性: ```actionscript // 获取第一个item的menuName值 trace(myXML.item[0].menuName); // Output: burger // 获取第一个item的id值 trace(myXML.item[0...
在这个例子中,我们首先创建了一个ArrayCollection,然后创建了一个空的XML节点`<fruits>`。接着,我们遍历ArrayCollection中的每个元素,将其包装为`<fruit>`节点,并添加到XML文档中。最后,我们将整个XML文档转换...
本文将详细讲解如何在Flex中使用`<mx:Tree>`控件来创建可动态添加和删除节点的树形结构,以及相关的源码和工具应用。 `<mx:Tree>`控件是Flex MX组件库中的一个关键组件,它允许开发者展示层次化的数据,用户可以...