2009-04-28 46 views

回答

0

您可以使用FileReference.save()方法將XML數據保存到本地文件。它會提示用戶輸入一個位置來保存文件,然後保存數據。

下面是一個例子:

var xml:XML = <root><someXmlTag/></root>; 
var fileReference:FileReference = new FileReference() 
fileReference.save(xml, "myfile.xml"); 
0

據我知道,軟硬無法寫入文件!

我使用HTTPService來加載XML文件和結果甚至處理程序來訪問它。

<mx:HTTPService id="service" url="myXml.xml" result="ServiceResult (event)"/> 

不要在HTTPService標記中指定結果格式。 這是結果事件處理程序的代碼。

private function ServiceResult (e : ResultEvent) : void { 
    e.result.XmlTag.AnotherXmlTag; 
} 

您還可以使用service.lastResult來訪問由HTTPService返回的最後結果。結果與dataProvider屬性完全兼容,特別是在數組和圖表系列中。

var series : LineSeries = new LineSeries(); 
series.dataProvider = e.result.XmlTag.AnotherXmlTag; 

這將採用XmlTag中所有AnotherXmlTag標記中的值。對於系列,不過,你也應該指定一個yField或與xField,但它離題了:-)

如果它不工作,你也可以投用爲關鍵字,例如它:

series.dataProvider = e.result.XmlTag as ArrayCollection; 

在這種情況下,我實際上並沒有嘗試投射它,但底線是XML標籤與陣列和ArrayCollections兼容。

就你而言,你只需使用e.result來獲取完整的XML文件,將其分配給一個變量,然後使用Ben的方法編寫它。您也可以使用上面解釋的方法從各個值創建一個數組,並在需要時手動插入標籤等。這樣做的好處是,您可以在數組中準備好所有的值,以後再需要它們。如果你循環遍歷索引,這將不需要很多工作,而且這將是我做這件事的方式。

希望這會有所幫助!

相關問題