Groovy日期解析问题

时间:2011-12-20 08:51:16

标签: date groovy

groovy的date.parse()方法正确检测日期DD和年份yyyy,但无法将月份检测为mmm ..如

println new Date().parse("DD-MMM-yyyy", '22-MAR-2011')

产生输出

Sat Jan 22 00:00:00 GMT+05:30 2011

为什么月亮游行将MAR作为Jan获得?我该怎么做才能让它以mmm格式检测月份?

1 个答案:

答案 0 :(得分:4)

问题实际上是你正在使用DD - 这意味着一年中的一天

正确的方式:

println new Date().parse("dd-MMM-yyyy", '22-MAR-2011')

格式化日期时的快速提示尝试使用反向并查看结果:

println new Date().format("dd-MMM-yyyy")

Groovy使用了SimpleDateFormat ,但这并不重要,因为大多数日期库使用相同的格式约定。