如何将给定时间(如日期字符串)转换为 13 位数字时间戳
How do I convert an given time like date string to 13 digit timestamp
我想在 SOAPUI
中测试 API,我必须以 21 Dec 2016 12:34:45
格式发送时间请求,API 会获取所有记录出现在提供的开始日期和结束日期之间。
现在我必须断言记录是否实际存在于该日期范围内,并且响应采用 13 位 unix 时间戳格式。我想将 21 Dec 2016 12:34:45
转换成 13 位 unix 时间戳 格式。
使用 Java 内置 Timestamp
:
DateFormat dateFormat = new SimpleDateFormat("dd MMM yyyy HH:mm:ss", Locale.ENGLISH);
Date date = dateFormat.parse("21 Dec 2016 12:34:45");
long time = date.getTime();
System.out.println(time);
使用简单日期格式将文本中的日期转换为日期变量。然后你可以使用Date.getTime方法。
2016 年 12 月 21 日 12:34:45 = dd MMM yyyy HH:mm:ss
您应该能够编写其余代码。
假设您需要 groovy 中的解决方案,因为问题标有 soapui, ready-api
个标签。
在groovy中很简单:
例如,您在 Groovy 脚本 测试步骤中的变量中有日期,如下所示。
def t = '21 Dec 2016 12:34:45'
获取时间戳所需要做的就是:
log.info "${new Date(t).getTime()}"
您可以使用以下语句将其分配给变量:
def longTime = new Date(t).getTime()
我想在 SOAPUI
中测试 API,我必须以 21 Dec 2016 12:34:45
格式发送时间请求,API 会获取所有记录出现在提供的开始日期和结束日期之间。
现在我必须断言记录是否实际存在于该日期范围内,并且响应采用 13 位 unix 时间戳格式。我想将 21 Dec 2016 12:34:45
转换成 13 位 unix 时间戳 格式。
使用 Java 内置 Timestamp
:
DateFormat dateFormat = new SimpleDateFormat("dd MMM yyyy HH:mm:ss", Locale.ENGLISH);
Date date = dateFormat.parse("21 Dec 2016 12:34:45");
long time = date.getTime();
System.out.println(time);
使用简单日期格式将文本中的日期转换为日期变量。然后你可以使用Date.getTime方法。
2016 年 12 月 21 日 12:34:45 = dd MMM yyyy HH:mm:ss
您应该能够编写其余代码。
假设您需要 groovy 中的解决方案,因为问题标有 soapui, ready-api
个标签。
在groovy中很简单:
例如,您在 Groovy 脚本 测试步骤中的变量中有日期,如下所示。
def t = '21 Dec 2016 12:34:45'
获取时间戳所需要做的就是:
log.info "${new Date(t).getTime()}"
您可以使用以下语句将其分配给变量:
def longTime = new Date(t).getTime()