JasperReports:将金额转换为单词

时间:2013-02-13 11:52:57

标签: plsql jasper-reports oracle-apex

我正在使用 iReport 4.7

我想用文字打印量。

例如:
假设文本字段包含1000,我想打印像“一千”。

有人告诉解决它的步骤吗?

2 个答案:

答案 0 :(得分:1)

在将数据源传递给报告之前处理它。

使用ibm' ICU4J您可以通过执行类似

的操作将金额转换为单词
double num = 2718;
    RuleBasedNumberFormat formatter = new RuleBasedNumberFormat(Locale.ENGLISH, RuleBasedNumberFormat.SPELLOUT);
    String result = formatter.format(num);
    System.out.println(result);

将打印

two thousand seven hundred eighteen

答案 1 :(得分:0)

如果您使用的是Oracle数据库,请尝试以下方法:

SELECT TO_CHAR(TO_DATE($P{ParamName}, 'J'), 'Jsp')
FROM dual

这标明了您通过$P{ParamName}传递的任何数字。您可以在主查询的SELECT子句中使用此select子句并使用它。