IReport BigDecimal 格式 "R$ #,##0.00" 图表中的货币价值
IReport BigDecimal format "R$ #,##0.00" Monetary Value in Charts
我有一个 JasperReports 图表,在报告中,field
$F{soma}
是 BigDecimal
,在 database
MySQL
是 Decimal(19,2)
。我正在使用 sql
: select SUM(valor) as soma
来获取字段 $F{soma}
。
仅打印 $F{soma}
我得到的标签如下:1.500,20
。无格式表达。我需要的是显示如下标签:"R$ 1,520.20"
.
试过这个:
new java.text.DecimalFormat("R$ #,##0.00").format(Double.valueOf($F{soma}))
但是没有成功,所以如果有人能指出我的方向,我将不胜感激。
没有 post 图片的声誉,但下面的链接是关于 field
类型的..
MySQL
中的字段:
正在打印的标签(无格式表达式)
如果您的 $F{soma}
是一个 BigDecimal
字段,那么只写
new java.text.DecimalFormat("R$ #,##0.00").format($F{soma});
使用 NumberFormat
的一个实例,它具有正确的 Currency
来格式化值。如果默认 Locale
给您带来问题,
将 NumberFormat.getCurrencyInstance(Locale inLocale)
与您想要的 Locale
一起使用,例如:
NumberFormat.getCurrencyInstance(Locale.US);
使用NumberFormat.getInstance()
和setCurrency()
设置你想要的Currency
,例如:
NumberFormat f = NumberFormat.getCurrencyInstance();
f.setCurrency(Currency.getInstance(…));
我有一个 JasperReports 图表,在报告中,field
$F{soma}
是 BigDecimal
,在 database
MySQL
是 Decimal(19,2)
。我正在使用 sql
: select SUM(valor) as soma
来获取字段 $F{soma}
。
仅打印 $F{soma}
我得到的标签如下:1.500,20
。无格式表达。我需要的是显示如下标签:"R$ 1,520.20"
.
试过这个:
new java.text.DecimalFormat("R$ #,##0.00").format(Double.valueOf($F{soma}))
但是没有成功,所以如果有人能指出我的方向,我将不胜感激。
没有 post 图片的声誉,但下面的链接是关于 field
类型的..
MySQL
中的字段:
正在打印的标签(无格式表达式)
如果您的 $F{soma}
是一个 BigDecimal
字段,那么只写
new java.text.DecimalFormat("R$ #,##0.00").format($F{soma});
使用 NumberFormat
的一个实例,它具有正确的 Currency
来格式化值。如果默认 Locale
给您带来问题,
将
NumberFormat.getCurrencyInstance(Locale inLocale)
与您想要的Locale
一起使用,例如:NumberFormat.getCurrencyInstance(Locale.US);
使用
NumberFormat.getInstance()
和setCurrency()
设置你想要的Currency
,例如:NumberFormat f = NumberFormat.getCurrencyInstance(); f.setCurrency(Currency.getInstance(…));