xmlの扱い

xmlファイルを読み込んで、読み込んだ要素の扱いについて。
といっても、要素の扱いについては、属性値を表示するだけ。
データを扱う際の書き方は、その都度調べればいぃってことでココでは触れず。


import flash.events.*;
import flash.net.URLLoader;
import flash.net.URLLoaderDataFormat;
import flash.net.URLRequest;
import flash.filesystem.File;
import flash.filesystem.FileMode;
import flash.filesystem.FileStream;

var myloader:URLLoader;
var myxml:XML;

// URLLoader作成
myloader = new URLLoader();
myloader.dataFormat = URLLoaderDataFormat.TEXT;
myloader.addEventListener(Event.COMPLETE, onLoaded);
var urlreq:URLRequest = new URLRequest("xmlファイル");
myloader.load(urlreq);

public function onLoaded( e:Event ) : void{

  myxml = new XML(myloader.data); // XMLオブジェクト
  var n:Number = xml.item.length(); // の数

  for (var i:Number = 0; i < n; i++){ // の数だけ
    trace(myxml.item.@name); //  name属性をログに表示
  }

  // ちなみに xml データをファイルに出力するときは、以下のような感じ。
  var file:File = new File("ファイルパス名");
  var stream:FileStream = new FileStream();
  stream.open(file, FileMode.WRITE);
  stream.writeUTFBytes( "\n" );
  stream.writeUTFBytes(myxml);
  stream.close();
}

読み込むxmlファイルは、こんな感じ。

<data>
  <item name="1"></item>
  <item name="2"></item>
  <item name="3"></item>
  <item name="4"></item>
  <item name="5"></item>
</data>

コメント