如何比较Groovy中的日期?

时间:2017-07-14 09:26:26

标签: groovy soapui

我需要使用groovy

比较格式为13.07.2017 14:03:51,469000000的两个数据

我尝试这样做,但收到错误消息。

我得到下一个数据:

time1 = 13.07.2017 14:03:51,469000000

time2 = 13.07.2017 14:03:52,069000000

然后我尝试比较它:

time1  = time1['TIME'] as String
time2  = time2['TIME'] as String
assert time1 > time2, 'Error'

我应该选择哪种类型的值来比较日期? 我的比较有什么不对?

1 个答案:

答案 0 :(得分:5)

您需要将字符串转换为Date,然后进行比较,如下所示。

要进行转换,应使用正确的日期格式。

在这里,内联评论:

//Define the date format as per your input
def df = "dd.MM.yyyy HH:mm:ss,S"

//Parse the date string with above date format
def dateTime1 = new Date().parse(df, "13.07.2017 14:03:51,469000000")
def dateTime2 = new Date().parse(df, "13.07.2017 14:03:52,469000000")

//Compare both date times
assert dateTime1 < dateTime2