首页 > 解决方案 > Groovy - 简单的日期重新格式化

问题描述

我正在使用下面的代码转换"Oct 09, 2018""20181009".

import java.text.SimpleDateFormat
import java.util.Date

def olddate = "Oct 09, 2018"
def date = Date.parse( "MMM DD, yyyy", olddate )
def newDate = new SimpleDateFormat("yyyyMMdd").format(date) 

问题是我得到以下输出:

20180109

无论我转换代码的日期如何,都会将月份返回为一月 (01)

标签: javagroovy

解决方案


"MMM DD, yyyy是错的。更改为MMM dd, yyyy; D意思是“一年中的一天”,d而是“一个月中的一天”。参见例如https://docs.oracle.com/javase/7/docs/api/java/text/SimpleDateFormat.html


推荐阅读