Javaのリソースデータ (2)
今回は、リソースデータとしてよく使われるPropertiesクラスについて書きます。
前回: id:simply-k:20100715:1278972561
次回: id:simply-k:20100721:1279748122
目次: id:simply-k:20100728:1280299110
プロパティ・ファイルからの読み込み (1.4以前からの形式)
ファイル形式のサンプル
#comment diary.id=simply-k diary.url=http://d.hatena.ne.jp/
拡張子は、一般的にpropertiesとする。
読み込みに使用するメソッド
- Properties#load(InputStream in)
- Properties#load(Reader reader)
サンプルコード
InputStream is = null; try { is = new FileInputStream("test.properties"); Properties props = new Properties(); props.load(is); String id = props.getProperty("diary.id"); String url= props.getProperty("diary.url"); ... } finally { if (is != null) { is.close(); } }
プロパティ・ファイルからの読み込み (5.0でサポートされたXML形式)
ファイル形式のサンプル
<?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE properties SYSTEM "http://java.sun.com/dtd/properties.dtd"> <properties> <comment>Comment</comment> <entry key="id">simply-k</entry> <entry key="url">http://d.hatena.ne.jp/</entry> <entry key="name">とあるソフトウェア開発者のブログ</entry> <entry key="message"> <![CDATA[ <a href="http://d.hatena.ne.jp/"> とあるソフトウェア開発者のブログ </a> ]]> </entry> </properties>
拡張子は、一般的にxmlとする。
読み込みに使用するメソッド
- Properties#loadFromXML(InputStream in)
サンプルコード
InputStream is = new FileInputStream("test.xml"); Properties props = new Properties(); props.loadFromXML(is); String id = props.getProperty("id"); String message = props.getProperty("message").trim(); ...
その他
入力ストリームの扱い
- Properties#load()は、入力ストリームを閉じない。
- Properties#loadFromXML()は、入力ストリームを閉じる。
前回: id:simply-k:20100715:1278972561
次回: id:simply-k:20100721:1279748122
目次: id:simply-k:20100728:1280299110