DOMを利用してXMLファイルを読む その1
android用のアプリを書くために、いまさらJavaを勉強中...われながらイケてない...
ここでは、DOM(Document Object Model)を使ったXMLファイルのパース方法を備忘録としてメモ。
■ DOMの長所と短所
DOMは読み込んだXML形式のデータを木構造で保持できる。
ただし、木構造でデータを保持するために、XMLファイルの大きさに比例してメモリを使ってしまうのが問題。
androidアプリの設定ファイル程度なら、それほど大きなサイズは必要ないのでDOMで十分(のハズ)。
勉強がてらインターネットラジオのタイトルとURLを記録したXMLファイルを読み込んだデータを保持(読み込んで、そのまま表示ってのは芸が無いので)してから、それを表示するプログラムを考えてみる。
まずは、XMLデータ構造と、読み込んだデータを保持するクラスから。
■ 読み込むXMLファイル(インターネットラジオのタイトルとURL)
ファイル名は test.xml とした。<?xml version="1.0" encoding="utf-8"?> <all_channels> <channel> <title>KJazz 88.1 FM</title> <url>http://www.jazzandblues.org/programming/listen/stream/</url> </channel> <channel> <title>KMHD 89.1</title> <url>http://www.kmhd.org/player/</url> </channel> <channel> <title>JAZZ.FM91</title> <url>http://www.jazz.fm/player/streams/stream_one.htm</url> </channel> </all_channels>
■ 読み込んだデータ構造(タイトルとURL)を保持するChannelクラスの定義
class Channel { private String title; private String url; public Channel() { this.title = null; this.url = null; } public void set_title(String buff) { this.title = buff; } public void set_url(String buff) { this.url = buff; } public String get_title() { return this.title; } public String get_url() { return this.url; } }