天気予報を表示してみよう!

2008年6月25日(水)
高橋 義博

要素名を利用してデータを取り出す方法

 では、異なる要素が多く使われているXMLファイルから簡単にデータを取り出す方法をご説明いたします。

 今回は、「XpathAPIクラス」というFlashに実装されているクラスを利用して、要素名を使ったデータ取得を説明していきます。この「XpathAPIクラス」を利用するためには、ActionScriptソースコードの冒頭で「XpathAPIクラス」を呼び出す(インポート)必要がありますので、以下のように記述します。

import mx.xpath.XPathAPI

 「XpathAPIクラス」には、いくつかメソッドがあるのですが、今回は「selectSingleNode」を利用してデータを取り出します。
この「selectSingleNode」の利用方法ですが、下記のように記述することにより、「取得したいデータのパス名」から最初に見つかったノードのみを取得することができます。

XPathAPI.selectSingleNode(ノード名, 取得したいデータのパス名);

XPathAPIを利用してデータを取得しよう

 XPathAPIクラスを利用してデータを取得するには、図2の「XPathAPIによる天気アイコンファイルの指定範囲」にあるように、天気アイコンファイルのアドレスが記述されている親要素「lwws、 image、 url」を利用して、下記のように記述します。

XPathAPI.selectSingleNode(weather_xml.firstChild, "/lwws/image/url/*");

 上記の「weather_xml.firstChild」はノード名で、そのノードから取り出したいデータのある要素を順に指定した「/lwws/image/url/*」を設定しています。最後の「*」は、指定したパス(上記の例では「url」)の子ノードすべてを表しています。

 上記の「XPathAPIクラス」を利用しますと、要素名をそのまま利用できるため、このように多くの要素が使われている場合に有効な方法になります。

 1ページ目のサンプルファイルを「XPathAPIクラス」の記述に書き換えたファイルがこちらからダウンロード(http://www.thinkit.co.jp/images/article/83/4/8342.zip)できますので、2つを比較してみてください(8342.zip/7.01 KB)。

 最後に、インターネット上のXMLファイルを利用する際の注意事項をご説明します。

制御機器メーカーでソフト開発やWebマスターの業務を経て、2007年からフリーランスとして、Webサイト制作、Flashコンテンツ制作を行っている。また、WebスクールでWebデザイン、Flash制作の講師などを担当し、経験を生かして幅広い指導を行っている。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています