所以我有一个我无法解决的小问题。我需要将国家/地区名称英语翻译为法语,但是我无法使用API 19来做到这一点。我读过类似的主题,但答案仅适用于API> 19。
我检查了库,但是找不到适合我的问题的库,关于它的库并不多。
编辑:在API 21下不起作用的代码:
String country = "Japonia";
Locale outLocale = Locale.forLanguageTag("en_GB");
Locale inLocale = Locale.forLanguageTag("pl-PL");
for (Locale l : Locale.getAvailableLocales()) {
if (l.getDisplayCountry(inLocale).equals(country)) {
System.out.println(l.getDisplayCountry(outLocale));
break;
}
}
来自:Translate country name into other language
编辑2:
我从apache添加了Dependenccy,但是如何使用?
LocaleUtils.toLocale(localeString)
编辑3
我使用了上面的行,但是这行不通...我将其与“巴西”一起使用,但返回了异常。
预先感谢您的帮助!
答案 0 :(得分:3)
这是因为Locale.forLanguageTag()
是在API级别21中添加的。
尝试一下:
通过将其添加到build.gradle中来添加Apache Commons Lang数据包:
compile 'org.apache.commons:commons-lang3:3.6'
改为使用此功能:
LocaleUtils.toLocale(localeString)