Groovy中的不可解析日期

Groovy中的不可解析日期,groovy,Groovy,如何在Groovy中解析日期格式,如“10/07/2018 10:07 pm” 下面是我们使用的格式 Date.parse("dd-MM-yyyy hh:MM:SS","10/07/2018 10:07 pm") 它正确吗不,它应该是正确的 Date d = Date.parse("dd/MM/yyyy hh:mm aa","10/07/2018 10:07 pm") ​ 或者,如果您运行的是Java8,那么可以使用更好的 LocalDateTime d = LocalDateTime.pa

如何在Groovy中解析日期格式,如
“10/07/2018 10:07 pm”

下面是我们使用的格式

Date.parse("dd-MM-yyyy hh:MM:SS","10/07/2018 10:07 pm")
它正确吗不,它应该是正确的

Date d = Date.parse("dd/MM/yyyy hh:mm aa","10/07/2018 10:07 pm")
​ 或者,如果您运行的是Java8,那么可以使用更好的

LocalDateTime d = LocalDateTime.parse(
    "10/07/2018 10:07 pm",
    DateTimeFormatter.ofPattern("dd/MM/yyyy hh:mm aa")
)

我建议使用Java8类型而不是
Java.util.Date
。遗憾的是,没有一种简单的方法可以将小写的“pm”与
DateTimeFormatter
配合使用。便宜的方法是将字符串大写:

java.time.LocalDateTime.parse('10/07/2018 10:07 pm'.toUpperCase(), 'dd/MM/yyyy hh:mm a')
如本文所述,更“恰当”的方式是:


格式应为dd-MM-yyy-hh:MM:SS-a

Date.parse("dd-MM-yyyy hh:MM:SS a","10-07-2018 10:07:00 am")
Date.parse("dd/MM/yyyy hh:MM a","10/07/2018 10:07 pm")
​请在此处检查结果:

Date.parse("dd-MM-yyyy hh:MM:SS a","10-07-2018 10:07:00 am")
Date.parse("dd/MM/yyyy hh:MM a","10/07/2018 10:07 pm")