Android区域设置国家/地区名称到国家/地区代码
我有一些国家变量,比如“法国”。 我想得到国家代码,在这个例子中,我想得到“FR”或“FR” 我试过:Android区域设置国家/地区名称到国家/地区代码,android,localization,Android,Localization,我有一些国家变量,比如“法国”。 我想得到国家代码,在这个例子中,我想得到“FR”或“FR” 我试过: Locale locale = new Locale("", "FRANCE"); Log.e("test", locale.getCountry()); 但它的回报是: FRANCE 我错过了什么 谢谢大家! 您可以使用内置的Locale类: Locale l = new Locale("", "CH"); System.out.printl
Locale locale = new Locale("", "FRANCE");
Log.e("test", locale.getCountry());
但它的回报是:
FRANCE
我错过了什么
谢谢大家! 您可以使用内置的Locale类:
Locale l = new Locale("", "CH");
System.out.println(l.getDisplayCountry());
例如,打印“瑞士”。请注意,我没有提供语言
因此,对于反向查找,您可以从可用的国家/地区构建地图:
public static void main(String[] args) throws InterruptedException {
Map<String, String> countries = new HashMap<>();
for (String iso : Locale.getISOCountries()) {
Locale l = new Locale("", iso);
countries.put(l.getDisplayCountry(), iso);
}
System.out.println(countries.get("Switzerland"));
System.out.println(countries.get("Andorra"));
System.out.println(countries.get("Japan"));
publicstaticvoidmain(String[]args)抛出InterruptedException{
Map countries=新HashMap();
for(字符串iso:Locale.getISOCountries()){
语言环境l=新语言环境(“,iso”);
countries.put(l.getDisplayCountry(),iso);
}
System.out.println(countries.get(“瑞士”);
System.out.println(countries.get(“安道尔”);
System.out.println(countries.get(“日本”);
}
在这个帖子上找到答案。希望能有帮助