- 締切済み
ResourceBundleのgetStringArrayについて
こんにちは. TomactでServletの開発をしています(JDK1.3) ResourceBundleには、getStringArrayメソッドがあり 配列が戻り値として取得できるみたいなのですが、 System.propertiresにはどのように記述すれば 配列として取れるのでしょうか?? 以下のようにしても、Stringでは取得できるのですが、 配列としては取得できませんでした。 # System.propertires # TEST1 = {"1","2,"3"} 皆さんは、配列でパラメータを取得したい場合は どのようにしていますか? よろしくお願いします。
- みんなの回答 (1)
- 専門家の回答
みんなの回答
- a-kuma
- ベストアンサー率50% (1122/2211)
> System.propertiresにはどのように記述すれば > 配列として取れるのでしょうか?? JDK1.4 のソースを見てみました。結論から言うと、文字列しか取得できません。 プロパティファイルに記述するときは、実装クラスは PropertyResourceBundle になるのですが、 これは、ファイルからの値の取得に Properties#load を使います。 こいつは、Unicode 表現のエンコードはしてくれますが、値は String として とりだすだけです。 ResourceBundle#getStringArray があるのは、ListResourceBundle から派生させたクラスを 自前で用意したときしか有効ではありません。 > 皆さんは、配列でパラメータを取得したい場合は > どのようにしていますか? 適当な区切り文字を決めて StringTokenizer を使って配列を作るしかないです。 複数で開発しているのであれば、PropertyResourceBundle から派生したクラスを用意して、 そこで getStringArray メソッドをオーバライドしたものをみんなに配るかな。
お礼
カンマ区切りとかで、文字を区切って 自分で、配列にして使用しているのですね。 getStringArrayメソッドがあったので、 もしや!! と思って、色々と探したのですが、 はっきりしたことが分からなかったのです。 回答ありがとうございます!!