PullRequest
       51

3 голосов
/ 13 сентября 2011

В нашем приложении Struts мы использовали <fmt:formatNumber> так много мест, чтобы показать валюту.По умолчанию тег принимает настройки браузера и показывает символ валюты.Если локаль "en_US" показывает ($), если "en_UK" показывает (евро).

Но я хочу показать только доллар для всего моего приложения.Есть ли способ изменить в одном месте, чтобы отражать.

Заранее спасибо !!!

Ответы [ 3 ]

4 голосов
/ 13 сентября 2011

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

Просто укажите атрибут currencySymbol.

<fmt:formatNumber type="currency" currencySymbol="$" value="${product.price}" />

Смотри также:

3 голосов
/ 29 июня 2012

В <fmt:setLocale value="en_US"/> вы можете использовать атрибут области действия и указать значение для приложения. Таким образом, он сохранит значение Locale в en_US для всего приложения.

1 голос
/ 13 сентября 2011

Я предполагаю, что вы используете файл свойств.Я бы посоветовал иметь файл свойств, основанный на языковом стандарте вместо языкового стандарта страны.

Например, если у вас есть ApplicationResource.en_US.properties и ApplicationResources.en_UK.properties, лучше иметь ApplicationResources.en.properties и иметь запись ключа / значения, которая отображает толькодоллар.

В качестве альтернативы вы могли бы установить для вашего языка только en_US до отображения вашей валюты.Пример:

<fmt:setLocale value="en_US"/>
<fmt:formatNumber value="${val}"
                  type="currency"/>
...