【发布时间】:2016-01-08 15:35:21
【问题描述】:
我正在尝试使用 DateTime 类型的变量来获取此模式 'dd-MM-yyyy'
@{DateTimeFormat.forPattern("dd-MM-YYYY").parseDateTime(user.birthday.toString)}
但是我收到了这个错误
java.lang.IllegalArgumentException:无效格式:“2015-12-10T00:00:00.000Z”在“15-12-10T00:00:00.000Z”处格式错误
有没有办法用 nscala-time 做到这一点?
如果我使用 UTC 会有所不同吗?
更新
目前我正在使用 Date 并执行此操作
@{Dates.format(user.birthday.toDate, "dd-MM-YYYY")}
但也许没有强制转换是更好的方法
谢谢
【问题讨论】:
-
我认为异常清楚地表明您正在传递“2015-12-10T00:00:00.000Z”,其中日期格式为“dd-MM-YYYY”,这是因为您使用@987654323 @。
user.birthday的类型是什么?如果要将日期更改为格式化字符串,请尝试使用DateTime的toString重载方法,该方法以格式为参数。DateTimeFormat似乎也有print方法,它需要日期。 -
谢谢@Łukasz user.birthday 是 DateTime 类型(来自 nscala-time 库)。
-
那么以下任何一种方法都应该有效。您可以检查 joda time api 而不是 nscala 它应该是相似的。让您的 ide 告诉您您有哪些方法,并使用适合您需要的方法。
标签: scala nscala-time