Jaspersoft Studio。连接字符串和日期元素不起作用

时间:2018-08-01 09:59:30

标签: jasper-reports simpledateformat concat

我正在与Tibco Jaspersoft Studio合作。当我尝试在文本字段中合并字符串值和日期值时,会发生我的问题。

我尝试了以下表达式:

  

$ F {policyPlace} +“,” +新   SimpleDateFormat(“ yyyy-MM-dd'T'hh:mm”)。parse($ F {policyDate})

[]

  

$ F {policyPlace} +“,” +(新   SimpleDateFormat(“ yyyy-MM-dd'T'hh:mm”)。parse($ F {policyDate}))

[]

  

$ F {policyPlace} +“,” + String.valueOf(新   SimpleDateFormat(“ yyyy-MM-dd'T'hh:mm”)。parse($ F {policyDate}))

[]

  

$ F {policyPlace} +“,” +(String.valueOf(new   SimpleDateFormat(“ yyyy-MM-dd'T'hh:mm”)。parse($ F {policyDate})))

但是它没有按预期工作。

我得到这样的结果: not good result 如您所见-日期未按预期格式设置:/

我想要得到(结果)的东西-就像这样: enter image description here

有人像我一样有类似的问题吗?请给我一些建议。谢谢!

3 个答案:

答案 0 :(得分:0)

new SimpleDateFormat("yyyy-MM-dd'T'hh:mm").parse($F{policyDateTraor}只是将您提供的格式java.lang.String解析为java.util.Date

您并不是说要在输出中使用特定模式。您需要使用所需的格式来格式化新日期,例如:

new SimpleDateFormat("dd.MM.yy HH:mm").format(
    new SimpleDateFormat("yyyy-MM-dd'T'hh:mm").parse($F{policyDateTraor}))

如果要在多个地方使用此代码,则最好创建一个单独的类,以避免每次都创建格式化程序实例。

答案 1 :(得分:0)

非常感谢您回答水仙 我已经找到了解决方案。 我使用 msg()函数做到了。 像这样:

  

msg(“ {0},{1}”,$ F {policyPlace},新   SimpleDateFormat(“ yyyy-MM-dd'T'hh:mm”)。parse($ F {policyDate}))

答案 2 :(得分:0)

它应该是.format,而不是.parse。正确的代码如下。

$F{policyPlace} + ", " + new java.text.SimpleDateFormat("yyyy-MM-dd'T'hh:mm").format($F{policyDate})