Java DateFormat格式和解析会产生意外结果

时间:2012-06-22 18:52:22

标签: java simpledateformat

运行以下代码时,我收到了意外的输出,

DateFormat df = new SimpleDateFormat("YYYY-MM-dd");
Date date = df.parse("2012-06-23");
System.out.println(df.format(date));

输出:2012-01-01

我期待2012-06-23作为输出,我做错了什么?

2 个答案:

答案 0 :(得分:5)

yyyy应该全部小写,尝试一下,看看它是否有所作为......

答案 1 :(得分:3)

请参阅此Date & time in Java。您将获得使用的日期格式

使用'y'代替'Y'。

DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
Date date = df.parse("2012-06-23");
System.out.println(df.format(date));