2009-04-28 12 views

答えて

0

FileReference.save()メソッドを使用して、XMLデータをローカルファイルに保存できます。ファイルを保存してからデータを保存する場所をユーザーに求めます。ここで

は例です:

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

私の知る限り知っていたとして、Flexはファイルに書き込むことができませんでした!

私は、HTTPServiceを使用してXMLファイルと結果偶数ハンドラを使用してアクセスします。

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

HTTPServiceタグに結果の形式を指定しないでください。 これはresultイベントハンドラのコードです。

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のメソッドを使用して書き込むだけです。上記で説明した方法で個々の値から配列を作成し、必要に応じて手動でタグを挿入することもできます。これの利点は、後で必要とするすべての値を配列内に用意しておくことです。インデックスをループすると、これは多くの作業を必要とせず、それが私のやり方になります。

希望すると便利です。

関連する問題