如何在Jasper / iReports (4.5.1)中格式化显示部分文本的日期字段(数据库字段)
通过报表中的文本字段显示...(请使用Groovy )
“此日期的小计:”+ $F(DEPOSIT_DATE)
我已经尝试过(new SimpleDateFormat("MM/dd/yyyy")).parse($F{DEPOSIT_DATE})
,但收到错误消息:
net.sf.jasperreports.engine.fill.JRExpressionEvalException:
Error evaluating expression : Source text : (new SimpleDateFormat("MM/dd/yyyy")).parse($F{BANK_DATE})
我想在我的报告中显示的内容如下所示...
此日期小计: MM/DD/YYYY -格式...
发布于 2013-04-05 01:07:18
试试这个:
new SimpleDateFormat("MM/dd/yyyy").format($F{BANK_DATE})
发布于 2015-06-01 18:37:27
我同意Mateusz的观点,textField with pattern的性能比新的SimpleDateFormat("someFormat").format("jasperField").快当您处理大型报告时,这一点很重要。这是我的例子
<textField pattern="MM/dd/yyyy" isBlankWhenNull="true">
...
<textFieldExpression class="java.util.Date"><![CDATA[$F{certIssueDate}]]></textFieldExpression>
</textField>
发布于 2014-12-11 23:32:38
看起来,您尝试解析而不是格式化(如上所述)。
您还可以使用文本字段属性选项卡中的Pattern来漂亮地打印日期,或者手动更改jrxml中的模式:
<textField pattern="MM/dd/yyyy">
<!-- here comes other generated data-->
<textFieldExpression><![CDATA[$F{BANK_DATE}]]></textFieldExpression>
</textField>
https://stackoverflow.com/questions/15816874
复制相似问题