日期格式

时间:2015-07-13 20:09:07

标签: java date date-format simpledateformat

运行以下java代码

String v_date_str = "03/04/2015";
Date v_date = new SimpleDateFormat("MM/DD/YYYY").parse(v_date_str);
DateFormat formatter = null;

formatter = new SimpleDateFormat("dd-MMM-yyyy");
Date date_temp = null;
date_temp = (Date) formatter.parse("31-Dec-2012"); // String of same format a formatter
out.println("output: " + formatter.format(v_date));

我期待输出如下。

output: 03-MAR-2015

但我的输出为

output: 28-Dec-2014

请让我知道我哪里出错了,我该如何解决这个问题。

由于

1 个答案:

答案 0 :(得分:2)

您正在使用错误的格式解析日期。 D是一年中的某一天,而不是该月的某一天,即dY是一周,而不是一年,y。修复格式后,代码就会按预期执行:

Date v_date = new SimpleDateFormat("MM/dd/yyyy").parse(v_date_str);