Получить название страны из кода страны

Мне нужно получить полное название страны из кода страны. Например, для Нидерландов мне понадобится the Netherlands из кода страны NL.

Я думал, что смогу сделать это с помощью Locale, например:

Locale loc = new Locale("NL");
loc.getCountry();

но loc.getCountry(); пусто.

Любая идея о том, как это сделать, пожалуйста? Спасибо заранее!

Ответы

Ответ 1

попробуйте это

Locale loc = new Locale("","NL");
loc.getDisplayCountry();

Надеюсь, это поможет.

Ответ 2

Это должно работать:

Locale l = new Locale("", "NL");
String country = l.getDisplayCountry();

Первым параметром Locale является язык, который не подходит в вашем случае.

Ответ 3

Попробуйте использовать другой конструктор

Locale loc = new Locale("NL", "The Netherlands");

Locale По-видимому, не существует предопределенного Locale для The Netherlands

Ответ 4

для полного решения TelephonyManager (от этого решения):

TelephonyManager teleMgr = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
String localeCountry = teleMgr.getNetworkCountryIso();
if (localeCountry != null) {
    Locale loc = new Locale("",localeCountry);
    Log.d(TAG, "User is from " + loc);
}

Ответ 5

как указывает @ShreyaShah, решение использует loc.getDisplayCountry()