当我有一个BigDecimal,其值为34.31时,我用以下代码显示它:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}">
<f:convertNumber pattern="#0.00" type="currency" currencyCode="USD" currencySymbol="$"/>
</h:outputText>
我期待它显示34.31美元,但它显示34.31。
我做错了什么?
答案 0 :(得分:0)
谢谢@partlov。
当&lt; f:convertNumber /&gt;具有模式属性,将忽略类型和货币属性。所以有以下几点:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}">
<f:convertNumber pattern="#0.00" type="currency" currencyCode="USD" currencySymbol="$"/>
</h:outputText>
仅使用pattern =“#0.00”,因此34.4变为34.40。但有以下几点:
<h:outputText value="#{invoice.invoiceHeader.totalInvoiceAmt}">
<f:convertNumber type="currency" currencyCode="USD" currencySymbol="$"/>
</h:outputText>
使用所有属性导致34.4变为$ 34.40。