初始化 XML 變數Flash Player 9 以及更新的版本,Adobe AIR 1.0 以及更新的版本 您可以將 XML 常值指派給 XML 物件,如下所示: var myXML:XML = <order> <item id='1'> <menuName>burger</menuName> <price>3.95</price> </item> <item id='2'> <menuName>fries</menuName> <price>1.45</price> </item> </order> 如下列程式碼片段所示,您也可以使用 new 建構函式,從包含 XML 資料的字串建立 XML 實體: var str:String = "<order><item id='1'><menuName>burger</menuName>" + "<price>3.95</price></item></order>"; var myXML:XML = new XML(str); 如果此字串中的 XML 資料並非制式格式 (例如,結束標籤遺失),您便會看到執行階段錯誤。 您也能以傳址方式,從其它變數將資料傳入 XML 物件中,如下列範例所示: var tagname:String = "item"; var attributename:String = "id"; var attributevalue:String = "5"; var content:String = "Chicken"; var x:XML = <{tagname} {attributename}={attributevalue}>{content}</{tagname}>; trace(x.toXMLString()) // Output: <item id="5">Chicken</item> 若要透過 URL 載入 XML 資料,請使用 URLLoader 類別,如下列範例所示: import flash.events.Event; import flash.net.URLLoader; import flash.net.URLRequest; var externalXML:XML; var loader:URLLoader = new URLLoader(); var request:URLRequest = new URLRequest("xmlFile.xml"); loader.load(request); loader.addEventListener(Event.COMPLETE, onComplete); function onComplete(event:Event):void { var loader:URLLoader = event.target as URLLoader; if (loader != null) { externalXML = new XML(loader.data); trace(externalXML.toXMLString()); } else { trace("loader is not a URLLoader!"); } } 若要透過通訊端連線讀取 XML 資料,請使用 XMLSocket 類別。如需詳細資訊,請參閱 適用於 Adobe Flash Platform 的 ActionScript 3.0 參考中的 XMLSocket 類別。 |
|