为什么设置currencyCode时jstl的formatNumber货币符号区域设置是特定的

时间:2012-07-10 18:43:48

标签: java jsp jstl locale

我正在使用formatNumber,如下所示:

<fmt:formatNumber value="${amount}" type="currency" currencyCode="${currencyCode}" var="amt" />

如果我在区域设置en_US且货币代码为EUR,则我会将EUR作为符号,但如果我在区域设置en_GB,则会获得。为什么要考虑区域设置?欧元不应该总是兑换成吗?反正有没有得到我期望使用formatNumber的行为?

1 个答案:

答案 0 :(得分:3)

区域设置被视为acount,因此输出对用户有意义。

作为一个愚蠢的美国人(住在en_US语言环境中),我不知道那个时髦的符号是什么意思。

欧元对我来说非常有意义。

quick google建议您可以将currencySymbol属性设置为您想要的任何内容:

<fmt:formatNumber value="${amount}" type="currency" currencySymbol="FOO" currencyCode="${currencyCode}" var="amt" />