Groovy/grailsdate.parse
在我看来,以下Groovy脚本应该会因解析异常而失败:Groovy/grailsdate.parse,grails,groovy,Grails,Groovy,在我看来,以下Groovy脚本应该会因解析异常而失败: println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-10-06T05:58:00-0500") println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-14-06T05:58:00-0500") println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-10-45T05:58:00-0500") println D
println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-10-06T05:58:00-0500")
println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-14-06T05:58:00-0500")
println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-10-45T05:58:00-0500")
println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-10-06T35:58:00-0500")
println Date.parse("yyyy-MM-dd'T'HH:mm:ss","2014-10-06T05:95:00-0500")
请注意:
第二个日期的月份无效
第三个日期的日期无效
第四个日期的小时无效
第五个日期的分钟数无效
我很确定我知道它实际上在做什么,但这不是我所期望的。解析中所写的只是SimpleDataFormat的包装。可以取消SimpleDataFormat lenient的设置,就像在answer中一样,但是我认为在调用Date.parse时不可能这样做。因此,要获得正确的结果,您应该使用严格的SimpleDataFormat。谢谢。这就是我解决问题的方法。