2017-06-19 12 views
4

特定の文字列をロケールに変換する必要があります。 Stringは値 "fr_US"を持ち、ロケール(java.util.locale)に変換する必要があります。文字列をJavaのロケールに変換する方法

私は、変換を行いますが、私は「java.util.Localeの」

String val = "fr_US"; 
locale l1 = LocaleUtils.toLocale(val); 
// this converts into org.apache.commons.lang.LocaleUtils 
+0

https://stackoverflow.com/questions/20435143/java-を参照してくださいと同じであることutil-locale-making-country-lowercase – user7294900

+0

'java.util.Locale'クラスを調べようとしましたか?おそらく 'getInstance'のようなものでしょうか? –

答えて

3

することができますに変換する方法を探しています「org.apache.commons.lang.LocaleUtils」の一つの方法を見つけ操作を行います。

String val = "fr_US"; 
String[] tab = val.split("_"); 
Locale locale = new Locale(tab[0], tab[1]); 

それとも、あなたはLocaleでも

Locale locale = new Locale("fr", "US"); 

ヴァル

あなたをハードコードならば、我々は午前を持っていますethod forLanguageTagしかし、パラメータとしては、 -で、 _ではなく、BCP 47言語タグを渡す必要があります。

0

正しい方法があるので、あなたは、Apacheのツールを使用している場合:

Locale myLocale = LocaleUtils.toLocale("fr_US"); 

Locale myLocale = new Locale("fr", "US"); 
関連する問題