2012-02-06 9 views
5

У меня проблема с получением кода валюты страны. Моя задача - получить местоположение пользователя, узнать, в какой стране он сейчас находится, и получить код валюты этой страны. Вот код, который извлекает название страны и код страны из приобретенного местоположения:Приобретение кода валюты страны

Geocoder gc = new Geocoder(this); 
List<Address> addresses = gc.getFromLocation(
       location.getLatitude(), location.getLongitude(), 5); 

textView1.setText(addresses.get(0).getCountryName()); 
textView2.setText(addresses.get(0).getCountryCode()); 

Это работает отлично. Теперь я должен использовать класс java.util.Currency, чтобы получить объект Currency. Я могу использовать метод Currency.getInstance(Locale locale). Но в классе Locale нет конструктора, который позволяет передавать только код страны в качестве аргумента. Значит, я не могу создать объект Locale для страны. Как это можно решить? Заранее спасибо.

+0

Существует конструктор 'Locale (String language, String country)', который соответствует языковым группам ISO-639'. –

+0

Язык (Строковый язык, Строка)? –

ответ

5

Вы должны быть в состоянии использовать Currency.getInstance(new Locale("",code)), с возможным исключением, если код страны не является действительным.

+0

Спасибо, это работает! – Egor

1
String lang = Locale.getDefault().getDisplayLanguage(); 
Locale locale = new Locale(lang, COUNTRY_YOU_HAVE); 
Смежные вопросы