2012-06-13 14 views
2

В одном из моего вызова веб-службы приложения используется, который возвращает более 20 валют, напримерПолучить символ валюты из кода curency

USD, JPY, INR, GBP, ESP, EGP и т.д.

Теперь мне нужно конвертировать каждую валюту в соответствующий символ. Пожалуйста, предложите, как я могу реализовать то же самое в своем приложении.

Благодаря

+1

[Что вы пробовали?] (Http://mattgemmell.com/2008/12/08/what-have-you-tried/) – user1329572

+0

ИМО, этот вопрос не заслуживает WHYT. – sp00m

+0

@ sp00m, я не согласен. – user1329572

ответ

6

Попробуйте

Currency.getInstance("GBP").getSymbol(); 

Он печатает £ для меня.

Но он не может печатать значения для INR, ESP и т. Д. Использование пользовательского подхода к карте лучше.

+0

Это зависит от версии Java, так как она не работает в моем случае. – eatSleepCode

0

вы можете использовать хэш, где имя (USD, JPY, ...) - это ключ, а символ ($, €, ...) - это значение.

+0

Привет всем Я использовал один файл свойств, а затем я поместил все валюты и соответствующие символы Юникода в качестве ключа и значения, и как только я получил валюту из WebService Call, я получил соответствующее значение Unicode, которое отображается в файле свойств. –

1

Я бы использовал;

  • карта как Map<Current, String>
  • имеют свой собственный тип перечисления для валюты, который этот жесткий кодированный
  • использовать окно Свойства, загруженные с диска
1

Вы можете использовать метод getSymbol валютном объекта.

Какой символ используется, зависит от используемого Locale. Смотрите это.

Locale.setDefault(new Locale("lv","LV")); 
Currency c = Currency.getInstance("EUR"); 
System.out.println(c.getSymbol());