アプリなどを開発するブログ

React Native / Swift / Ruby on Railsなどの学習メモ。


ActionScriptでXMLを読み込んで必要なデータだけ取り出す

こんな感じのxmlファイルがあるとして、

<?xml version="1.0"?>
<movies>
    <movie>movie1.mp4</movie>
    <movie>movie2.mp4</movie>
    <movie>movie3.mp4</movie>
</movies>

XMLを読み込んで、タグ内の文字列を全て、 movieURLs という配列に入れたい場合。

var movieURLs:Array = [];
var xmlLoader:URLLoader = new URLLoader();
var moviesXML:XML;
xmlLoader.load( new URLRequest( "movies.xml" ) );
            
xmlLoader.addEventListener(Event.COMPLETE, parseXML);
function parseXML(event:Event):void{
                
    XML.ignoreWhitespace = true;
    moviesXML = new XML(xmlLoader.data);
                
    trace( moviesXML.child("movie") );
    var movies:XMLList = moviesXML.child("movie");
    for each (var str:String in movies) 
    {
    movieURLs.push(str);
    }
}

とすればOK。

child("タグ名")という感じで指定すれば、 親ノードとかは無視して取得できるっぽい。