2009-08-13 18 views
5

jspとjavaを使用してプログラムを作成しています 複数の言語をサポートするためにプロパティファイルを使用するにはどうすればよいですか? ところで、いつも\ u4345のようなものがあります。 これは何ですか?彼らはどうやって来ますか?複数言語のJavaで複数の言語を処理する方法は?

+0

どのようなフレームワークを使用していますか?ストラット、タペストリーなどのほとんどのフレームワークはi18nをサポートしているので、それらをチェックするだけです。 – nightingale2k1

答えて

14

ResourceBundleクラスをチェックしてください。 \u4345について

、これは、Javaの暗いと非常に迷惑レガシーコーナーの一つです。プロパティファイルはASCIIでなければならないので、すべての非ASCII文字は\uxxxx(そのUnicode値)としてエンコードする必要があります。 native2ascii command line toolでこのエンコーディングを使用するようにファイルを変換することができます。 IDEまたはビルドツールを使用している場合は、これを自動的に呼び出すオプションが必要です。

プロパティファイルには、あなた自身を完全に制御を持っている何かである場合は、プロパティファイルで直接UTF-8(または任意の他の文字セット)を使用し、そしてあなたがそれを読み込むspecify that encoding Java6のから始まることができます。

// new in Java6 
props.load(new InputStreamReader(new FileInputStream(file), 'UTF-8')); 

あなたは他の誰かがそのような(国際化のために使用される)のResourceBundleとして、それをしない場合、プロパティを自分でないロードする場合繰り返しますが、これはのみ動作します。

+0

ResourceBundlesの使い方を説明した個人的なブログ記事:http://tshikatshikaaa.blogspot.nl/2012/11/introduction-to-java-internationalization.html – JVerstry

1

i18nのJava tutorialはすでにPeterによって言及されています。 JSPを構築する場合は、おそらくJSTLを参照してください。基本的にJSPタグを使用してResourceBundleの機能を使用することができます。

関連する問題