如何使用带2位小数的fmt:formatNumber

时间:2018-09-27 08:16:57

标签: format jstl number-formatting

我的值为6666666666666666.6,并使用fmt:formatNumber在jsp(jstl)上进行格式化

<fmt:formatNumber type="NUMBER"
                  minFractionDigits="2"
                  maxFractionDigits="2"
                  value="6666666666666666.6"/>

显示结果:6,666,666,666,666,667.00

期望结果:6,666,666,666,666,666.60

请给我分享解决方案。

谢谢

2 个答案:

答案 0 :(得分:0)

您是否尝试过将类型number更改为currency

<fmt:formatNumber type="CURRENCY"
                  minFractionDigits="2"
                  maxFractionDigits="2"
                  value="6666666666666666.6"/>

答案 1 :(得分:0)

<c:set var="N-15-digits" value=${666,666,666,666,666.6}/>
<c:set var="N-16-digits" value=${6,666,666,666,666,666.6}/>     
<fmt:formatNumber value="${N-(0.1-(N%0.1))%0.1}"  type="number"  minFractionDigits="2"/>

此解决方案始终显示时无需四舍五入如果输入值小于16位,则结果比较如下。

N-15位数字将显示

  

666,666,666,666,666.60

N-16位数字将显示

  

6,666,666,666,666,667.00