问题描述
如果使用Locale
构造函数,则可以并且必须将语言,国家和变量设置为单独的参数:
new Locale(language)
new Locale(language, country)
new Locale(language, country, variant)
因此,您的测试程序使用语言“ tr-TR”和“ en_US”创建语言环境。对于测试程序,可以使用new Locale("tr", "TR")
和new
Locale("en", "US")
。
如果您使用的是Java 1.7+,则还可以使用Locale.forLanguageTag
以下命令解析语言标签:
String myString="YASAT BAYRI";
Locale trlocale= Locale.forLanguageTag("tr-TR");
Locale enLocale = Locale.forLanguageTag("en_US");
创建具有相应语言小写字母的字符串。
解决方法
我想在英语和土耳其语区域设置中将土耳其语字符串翻译成小写。我正在这样做:
String myString="YAŞAT BAYRI";
Locale trlocale= new Locale("tr-TR");
Locale enLocale = new Locale("en_US");
Log.v("mainlist","en source: " +myString.toLowerCase(enLocale));
Log.v("mainlist","tr source: " +myString.toLowerCase(trlocale));
输出为:
en source: yaşar bayri
tr source: yaşar bayri
但是我想要这样的输出:
en source: yasar bayri
tr source: yaşar bayrı
这在Java中可行吗?