プロが教えるわが家の防犯対策術!

こんにちは.

TomactでServletの開発をしています(JDK1.3)

ResourceBundleには、getStringArrayメソッドがあり
配列が戻り値として取得できるみたいなのですが、
System.propertiresにはどのように記述すれば
配列として取れるのでしょうか??

以下のようにしても、Stringでは取得できるのですが、
配列としては取得できませんでした。


# System.propertires
#
TEST1 = {"1","2,"3"}

皆さんは、配列でパラメータを取得したい場合は
どのようにしていますか?

よろしくお願いします。

A 回答 (1件)

> System.propertiresにはどのように記述すれば


> 配列として取れるのでしょうか??

JDK1.4 のソースを見てみました。結論から言うと、文字列しか取得できません。

プロパティファイルに記述するときは、実装クラスは PropertyResourceBundle になるのですが、
これは、ファイルからの値の取得に Properties#load を使います。
こいつは、Unicode 表現のエンコードはしてくれますが、値は String として
とりだすだけです。

ResourceBundle#getStringArray があるのは、ListResourceBundle から派生させたクラスを
自前で用意したときしか有効ではありません。

> 皆さんは、配列でパラメータを取得したい場合は
> どのようにしていますか?

適当な区切り文字を決めて StringTokenizer を使って配列を作るしかないです。

複数で開発しているのであれば、PropertyResourceBundle から派生したクラスを用意して、
そこで getStringArray メソッドをオーバライドしたものをみんなに配るかな。
    • good
    • 0
この回答へのお礼

カンマ区切りとかで、文字を区切って
自分で、配列にして使用しているのですね。

getStringArrayメソッドがあったので、
もしや!! と思って、色々と探したのですが、
はっきりしたことが分からなかったのです。

回答ありがとうございます!!

お礼日時:2002/12/05 09:21

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!