我有一个使用<fmt:formatNumber>
的JSP。问题是我们不知道JSP的值是数字还是字符串。如果字符串即将发出,则抛出NumberFormatException。
我试着查看JSTL,但是没有成功,如果我检查了值==值,它会被提及如果String返回false但没有成功。请参阅下面的代码。
<fmt:formatNumber type="currency" currencySymbol="$" maxFractionDigits="2" minFractionDigits="2" >${primary.value}</fmt:formatNumber>
任何帮助都将不胜感激。
提前致谢。
答案 0 :(得分:1)
这可能是您问题的解决方案。当您尝试将字符串添加到0时,您将收到异常。
<c:catch var="catchString">
<c:set value="${0 + primary.value}" />
</c:catch>
<c:choose>
<c:when test="${not empty catchString}">
${primary.value}
</c:when>
<c:otherwise>
<fmt:formatNumber type="currency" currencySymbol="$" maxFractionDigits="2" minFractionDigits="2" >${primary.value}</fmt:formatNumber>
</c:otherwise>
</c:choose>
答案 1 :(得分:0)