我的值为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
请给我分享解决方案。
谢谢
答案 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