2011-12-31 7 views
0

ゲームのデータから.xmlファイルを保存して遊んでいます。私はxmlオブジェクトをByteArrayに変換し、それをFileReferenceに書き込む方法を知っています。私が今知る必要があるのは、空のxmlオブジェクト(var xml:XML = new XML()を使用)から完全に埋め込まれたxmlオブジェクトに移動する方法です。AS3&XML - as3でxmlデータを作成するにはどうすればよいですか?

誰かがノードと値を追加するために使用するためにどのような機能を見せすることはできますか?具体的には、同じタイプのノードをいくつか作成する方法を知る必要があります。あまりにも、削除するノードと値を変更する方法をどのように知っておくと便利かもしれません

<data> 
    <player> 
     <money>15831</money> 
     <shipType>1</shipType> 
     <ship> 
      <fuelCur>450</fuelCur> 
      <energyCur>160</energyCur> 
      <shieldCur>100</shieldCur> 
      <armorCur>40</armorCur> 
      <structCur>15</structCur> 
     </ship> 
    </player> 
    <currentSystem>3</currentSystem> 
    <currentPlanet>3</currentPlanet> 
    <date> 
     <year>2012</year> 
     <month>10</month> 
     <day>15</day> 
    </date> 
    <missionFlag>true</missionFlag> 
    <planet id="0"> 
      <population>0</population> 
    </planet> 
    <planet id="1"> 
      <population>29827632</population> 
    </planet> 
    <planet id="2"> 
      <population>0</population> 
    </planet> 
</data> 

:ここでは、最終的なXMLがどのように見えるかのサンプルです。

はまた、私はXMLでこれを行うにはFlashライブラリから何かをインポートする必要がありますか? FlashDevelopを使用していますが、xml.と入力すると、FlashDevelopは通常のように提案を表示しません。

答えて

8

編集XMLは、実際にはかなり簡単で、かなり基本的なもの - それはAS3の中核部分です。あなたがそれらを呼び出すようAS3は自動的にそうように、ノードを追加します。ちょうどあなたが望むタイプの新しいXMLオブジェクトを起動し、同じノードの倍数を追加する次に

<data> 
    <player> 
     <money>15831</money> 
     <shiptype>1</shiptype> 
     <ship> 
      <fuelCur>450</fuelCur> 
     </ship> 
    </player> 
</data> 

var xml:XML = <data />; 
xml.player.money = 15831; 
xml.player.shiptype = 1; 
xml.player.ship.fuelCur = 450; 

はになります、それをあなたが作業しているXMLオブジェクトに追加します。または、別のxmlオブジェクトを完全にスキップします。必要に応じて何度も繰り返します。

var segment:XML = <planet />; 
xml.appendChild(segment); // xml.planet[0] 
xml.appendChild(segment); // xml.planet[1] 
xml.appendChild(<planet />); // xml.planet[2] 
//etc... 

次に、インデックスで値を追加できます。

//Assuming this is the 4th planet you've added... 
xml.planet[3].population = 29827632; 
+1

ha、今回はちょうど 'appendChild()'を使っています - ドット構文を使って新しいノードをつけることはできませんでした:D – divillysausages

+0

たくさんのチュートリアルがありますGoogle検索ボックスに「as3」と入力すると、ドロップダウンの4番目の項目が「as3 xml」になります。チュートリアルの例をいくつか示します:[ex1](http://www.republicofcode.com/tutorials/flash/as3xml/)、[ex2](http://willperone.net/Code/as3xml.php)、[ex4 ](http://www.thetechlabs.com/xml/create-a-as3-slideshow-with-xml/)、[ex4](http://delfeld.wordpress.com/2009/05/06/xml-クイックリファレンス/) – iND

+0

@wvxvw - XMLがAS3の中核となるデータ型であることを言及すると、この質問に関する他のコメントよりも私の理解を助けてくれました。ありがとう! –

0

FlashDevelopでは、別個のXMLファイルを完全に作成してみてください。それはより良いコードプロンプトを与えるでしょう。 XMLについては

は、しかし、私は、Adobeの初歩的なdocs on their XML classは、XMLオブジェクトを作成し、使用するための有用な例とツールの富を持っていることを発見しました。 AS3で

+0

は、どのように私は別のXMLファイルを作成するのでしょうか?そして、コードプロンプトにどのように役立つでしょうか? –

+0

私は質問に答えるのが嫌いですが、これは本当に基本的なFlashDevelopとAS3の情報です。私は最高の答えは、 "as3ロードXMLチュートリアル"と "FlashDevelopは新しいXMLファイルを作成"グーグルで発見されると思います。 – iND

+0

私は周りを探索し、特に明確なチュートリアルは見つかりませんでした。 http://www.kirupa.com/developer/actionscript/create_edit_xml.htmは、私が必要と思ったようなものでしたが、いくつかの関数はXMLモデルでさえ私が理解できるものでさえありません。 –

関連する問題