JSTL不要对minFractionDigits进行舍入

时间:2014-03-17 19:27:45

标签: spring-mvc format jstl

我有一个我希望被截断而不是舍入的数字。看起来当我使用minFractionalDigit = 2时,我的数字会在第三个小数点上舍入。

例如:

What happens:

1.123 => 1.12
1.145 => 1.15
1 => 1.00

What I want: 

1.123 => 1.12
1.145 => 1.14
1 => 1.00    


<fmt:formatNumber value="${myNumber}" minFractionDigits="2" type="currency" />

1 个答案:

答案 0 :(得分:1)

Here是一种绕过四舍五入的前端方法。

另一种方法是在后端格式化值,如下所示:

BigDecimal formattedNumber = new BigDecimal(myNumber);
format.setScale(2, RoundingMode.DOWN);

request.setAttribute("myNumber", formattedNumber);

然后您可以在表达式中引用:

<fmt:formatNumber value="${myNumber}" minFractionDigits="2" type="currency" />