groovy next() 日期问题
groovy next() date issue
我正在尝试在 SoapUI 中添加一个 groovy 脚本,以使用当前日期中的 next()
查找明天的日期。
除了日期为 19 以外,我得到所有其他日期的预期日期。
def TodaysDate = new java.util.Date().format("yyyy-MM-dd")
log.info ">>>>>>>>>> TodaysDate="+TodaysDate
log.info TodaysDate.next()
输出:
Wed Jul 19 14:34:29 EDT 2017:INFO:>>>>>>>>>> TodaysDate=2017-07-19
Wed Jul 19 14:34:29 EDT 2017:INFO:2017-07-1:
我也试过了。
def Today = new java.text.SimpleDateFormat("yyyy-MM-dd").format(new Date())
log.info Today
NextDay = Today.next()
log.info NextDay
输出:
Wed Jul 19 14:43:38 EDT 2017:INFO:2017-07-19
Wed Jul 19 14:43:38 EDT 2017:INFO:2017-07-1:
此 next()
迭代器适用于其他日期。你能帮我理解我在这里做错了什么吗?
format()
方法returns一个String
。当你在 String
上调用 next()
时,它 increments the last character. So, character 9
is incremented 到下一个 unicode 值,变成 :
.
如果您想要特定格式的日期,首先在 Date
对象中调用 next()
,然后对其进行格式化:
def TodaysDate = new java.util.Date()
log.info ">>>>>>>>>> TodaysDate="+TodaysDate.format("yyyy-MM-dd")
log.info TodaysDate.next().format("yyyy-MM-dd")
将打印 TodaysDate=2017-07-19
和下一个日期 2017-07-20
。
或许在您的情况下使用 TimeCategory
是值得的?看看这个简单的代码示例:
import groovy.time.TimeCategory
use (TimeCategory) {
println new Date() + 1.day
}
它适用于任何日期。使用今天的日期 (2017-07-19) 对其进行测试 - 添加 1.day
将为您提供 2017-07-20。希望对你有帮助。
我正在尝试在 SoapUI 中添加一个 groovy 脚本,以使用当前日期中的 next()
查找明天的日期。
除了日期为 19 以外,我得到所有其他日期的预期日期。
def TodaysDate = new java.util.Date().format("yyyy-MM-dd")
log.info ">>>>>>>>>> TodaysDate="+TodaysDate
log.info TodaysDate.next()
输出:
Wed Jul 19 14:34:29 EDT 2017:INFO:>>>>>>>>>> TodaysDate=2017-07-19
Wed Jul 19 14:34:29 EDT 2017:INFO:2017-07-1:
我也试过了。
def Today = new java.text.SimpleDateFormat("yyyy-MM-dd").format(new Date())
log.info Today
NextDay = Today.next()
log.info NextDay
输出:
Wed Jul 19 14:43:38 EDT 2017:INFO:2017-07-19
Wed Jul 19 14:43:38 EDT 2017:INFO:2017-07-1:
此 next()
迭代器适用于其他日期。你能帮我理解我在这里做错了什么吗?
format()
方法returns一个String
。当你在 String
上调用 next()
时,它 increments the last character. So, character 9
is incremented 到下一个 unicode 值,变成 :
.
如果您想要特定格式的日期,首先在 Date
对象中调用 next()
,然后对其进行格式化:
def TodaysDate = new java.util.Date()
log.info ">>>>>>>>>> TodaysDate="+TodaysDate.format("yyyy-MM-dd")
log.info TodaysDate.next().format("yyyy-MM-dd")
将打印 TodaysDate=2017-07-19
和下一个日期 2017-07-20
。
或许在您的情况下使用 TimeCategory
是值得的?看看这个简单的代码示例:
import groovy.time.TimeCategory
use (TimeCategory) {
println new Date() + 1.day
}
它适用于任何日期。使用今天的日期 (2017-07-19) 对其进行测试 - 添加 1.day
将为您提供 2017-07-20。希望对你有帮助。