ロケール(java.util.Locale)を軽くいじる

忘れたいから忘れないように覚書・・・。
国際化対応するシステムを開発する際に見る程度で。次回は何年先になることやら

ロケールの取得と設定

http://d.hatena.ne.jp/simply-k/20100724
↑まずは、非常によく纏まってるからいいトコ取りです。
Locale#getDefault()で取得するのが使い勝手がよさそうで。ちなみに、getDefaultで取得できるロケールは、デフォルトロケールといって、つまり、ロケールの既定値なんですね。

java -Duser.language=ja -Duser.country=JP

Java起動時に引数を指定することでデフォルトロケールを設定できる。日本語環境であればデフォルトロケール

言語コード user.language ja
国コード user.country JP

のはずなので、起動時に指定しなくてもOK。
「-D」オプションで指定しない場合は、シェル(つまりOS)のロケール値から導き出すそうです。
OSのロケール値も変更してしまえば?と考えますが、影響が大きいような気がしますね。
ちなみに、英語圏でも使えるシステムにしたい場合は、

言語コード user.language en
国コード user.country US

とか指定してあげればOK。
でも、これって、Javaプロセス内のスレッド全てに影響を与えてしまう。
これも影響が大きいような気がします・・・小心者なので(汗
もっと、個別にロケールを解決する術はないだろうか?
ってことで、今日はこの辺で^^;

いじょ

関連記事: