Intereting Posts
Ограничить доступ базы данных Firebase к одному Android-приложению Почему MonkeyRunner.waitForConnection () не работает в моей среде? Изображения не загружаются в android 5.0, используя библиотеку picasso Объявление Admob никогда не отображается в представлении Иммерсивная функция в JB и ICS Предотвращение использования RecyclerView для использования событий касания Android – динамически получать текущую активность на переднем плане Есть ли какая-то конкретная причина использовать Amazon SNS вместо прямого сервиса Baidu Android – EditTexts в ListView привязаны к Custom ArrayAdapter – отслеживание изменений Обновление сервисов Google Play Неподдерживаемый метод: AndroidProject.getPluginGeneration () при запуске проекта Ошибка раздувания макета FloatingActionButton: NoSuchMethodException Eclipse не отображает время в logcat только для галактики nexus? TransformException дублирующаяся запись для com / google / android / gms / measurement / AppMeasurementService.class Как использовать компилятор arm-linux-androideabi

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

Я знаю, что есть способ получить название страны из кода страны, но возможно ли это и наоборот? Я до сих пор не нашел никакой функции, которая преобразует строку «Нидерланды» в «NL». Если возможно, как я могу получить коды стран?

public String getCountryCode(String countryName) { // Get all country codes in a string array. String[] isoCountryCodes = Locale.getISOCountries(); Map<String, String> countryMap = new HashMap<>(); // Iterate through all country codes: for (String code : isoCountryCodes) { // Create a locale using each country code Locale locale = new Locale("", code); // Get country name for each code. String name = locale.getDisplayCountry(); // Map all country names and codes in key - value pairs. countryMap.put(name, code); } // Get the country code for the given country name using the map. // Here you will need some validation or better yet // a list of countries to give to user to choose from. String countryCode = countryMap.get(countryName); // "NL" for Netherlands. return countryCode; } 

место действия

 Locale locale = new Locale("de"); locale.getCountry(); 

Не очень эффективно, но вы можете попробовать следующее:

 for (Locale locale : Locale.getAvailableLocales()) { if (locale.getDisplayCountry(Locale.US).equals("Netherlands")) { // Found ! } } 

Теперь есть несколько предостережений:

  • Ваша строка ввода написана на английском языке (если нет, знаете ли вы язык?)?
  • Это страна, в которой вы ищете часть поддерживаемой локали (если это не сработает)?