XML操作
對XML內容進行操作時,查詢XML節點是很重要的一個操作。在ActionScript 3.0中,提供了兩種查詢XML節點的方式:通過屬性進行查詢和通過節點內容進行能夠查詢。
使用屬性進行查詢時,可以直接指定查詢的內容的表示式。如果節點符合表示式的判斷,那麼在返回值內加入節點。具體使用方法如下程式碼所示。
var xml:String="<root>"
+"<Element>"
+"<Element1 version='9'>Flash CS3</Element1>"
+"<Element1 version='8'>Flash 8</Element1>"
+"<Element1 version='7'>Flash 2004MX</Element1>"
+"</Element>"
+"</root>";
var flexXML:XML=new XML(xml);
trace(flexXML.Element.Element1.(attribute('version')>7));
在上面程式碼中,flexXML.Element.Element1.(attribute('version')>7通過指定查詢version屬性大於7的節點,並輸出。上面程式碼輸出結果如下所示。
<Element1 version='9'>Flash CS3</Element1>
<Element1 version='8'>Flash 8</Element1>
在進行查詢時可以使用“==”、“>”、“<”、“>=”和“<=”等操作符進行對屬性的判斷。XML中,還提供一個hasOwnProperty判斷節點中是否存在查詢使用屬性。查詢表示式支援多條件布林運算。使用方式如下程式碼所示。
var xml:String="<root>"
+"<Element>"
+"<Element1 version='9'>Flash CS3</Element1>"
+"<Element1 version='8' company='geostar'>Flash 8</Element1>"
+"<Element1 version='7'>Flash 2004MX</Element1>"
+"</Element>"
+"</root>";
var flexXML:XML=new XML(xml);
trace(flexXML.Element.Element1.( hasOwnProperty(“company”)&&@version>7));
//輸出的結果為:<Element1 version='8' company='geostar'>Flash 8</Element1>
通過節點內容查詢節點的方式與通過屬性查詢節點的方式完全一致。同樣也是使用表示式的方式對節點內容進行判斷查詢。具體使用方式如下程式碼所示。
var flexXML:XML=<root>
<Element>
<Element1>
<Version>
9
</Version>
</Element1>
<Element1>
<Version>
8
</Version>
</Element1>
</Element>
</root>
trace(flexXML.Element.Element1.(Version>7));
執行結果為:<Element1>
<Version>9</Version>
</Element1>
<Element1>
<Version>8</Version>
</Element1>
xml直接獲取某一特定標籤名的所有節點,如下示例:
var flexXML:XML=<root>
<Element>
<Element1>
<Version>
9
</Version>
</Element1>
<Element1>
<Version>
8
</Version>
</Element1>
</Element>
</root>
trace(flexXML..Element1);
trace(flexXML..Version);
執行結果為:
<Element1>
<Version>9</Version>
</Element1>
<Element1>
<Version>8</Version>
</Element1>
<Version>9</Version>
<Version>8</Version>
對xml高階操作部分:
(1) 改變xml的標籤名:
var xml:XML=new XML("<標籤名></標籤名>");
//改變xml標籤名
xml.setName("標籤名1");
(2)往xml中新增屬性
var xml:XML=new XML("<標籤名></標籤名>");
//新增屬性
xml.@["屬性名"]="屬性值";
(3)設定xml中文字
var xml:XML=new XML("<標籤名></標籤名>");
xml.setChildren("文字內容");
(4)在xml中新增子節點
var xml:XML=new XML("<標籤名></標籤名>");
var xml2:XML=new XML("<標籤名2></標籤名2>");
var xml3:XML=new XML("<標籤名3></標籤名3>");
//子節點後面追加子節點
xml.appendChild(xml2);
//子節點前面追加新增子節點
//xml.prependChild(xml3);
相關文章
- C# 操作xml(轉)C#XML
- PHP操作xml詳解PHPXML
- PHP xml 轉陣列 陣列轉 xml 操作PHPXML陣列
- xml操作的幾種方法XML
- PHP透過DOM操作XMLPHPXML
- mybatis mapper.xml批次刪除操作MyBatisAPPXML
- QT: 操作主從檢視及XMLQTXML
- Spring中基於XML方式的AOP操作SpringXML
- XML基本操作-建立(DOM和LOINQ)和LINQ查詢和儲存XML
- 使用jaxp解析器dom方式對xml節點進行操作XML
- C#XmlHelper幫助類操作Xml文件的通用方法彙總C#XML
- XMLXML
- 使用FOR XML AUTO控制XML輸出KHXML
- XML文件XML
- Xml解析XML
- 序列化篇 生成xml 以及讀取xmlXML
- XML基礎XML
- php建立XMLPHPXML
- Java解析XMLJavaXML
- setting.xmlXML
- go 解析xmlGoXML
- 7.86 EXTRACT (XML)XML
- xml筆記XML筆記
- xml檔案XML
- L.xmlXML
- iOS – XML解析iOSXML
- XML介紹XML
- XML 元素概述XML
- 淺析XMLXML
- XML與JSONXMLJSON
- WebService XML SoapFormatterWebXMLORM
- Mybatis去xml化:我再也不想寫xml了MyBatisXML
- Python xml.etree.ElementTree讀寫xml檔案例項PythonXML
- 傳智播客PHP2015-XML視訊教程 XML-01-xml介紹 筆記PHPXML筆記
- Spring | xx-servlet.xml 和 applicationContext.xml 的區別SpringServletXMLAPPContext
- XML序列化XML
- perl+xml+iniXML
- Android XML 屬性AndroidXML
- XML Schema定義XML