日期格式转换为21世纪日期

时间:2014-07-31 02:31:33

标签: java date date-format

我的日期格式为DD/MM/YY(如下所示:10/12/03)。我想使用SimpleDateFormat将其格式化为不同的格式(即MM/dd/yyyy)。

当我尝试这个时:

try {
                // Old Date is 10/12/03
                newDate = simpleDateFormat.format(format.parse(oldDate));
            } catch (ParseException e) {
                e.printStacktrace();
            }

目前,格式化后的年份即0003,但我希望年份为2003。对此有任何意见吗?

1 个答案:

答案 0 :(得分:3)

查看SimpleDateFormat#set2DigitYearStart

这允许您定义" base"一年两位数,例如......

Calendar cal = Calendar.getInstance();
cal.set(Calendar.YEAR, 2000);

SimpleDateFormat inFormat = new SimpleDateFormat("dd/MM/yy");
inFormat.set2DigitYearStart(cal.getTime());
SimpleDateFormat outFormat = new SimpleDateFormat("MM/dd/yyyy");
try {
    // Old Date is 10/12/03
    String value = outFormat.format(inFormat.parse("10/12/03"));
    System.out.println(value);
} catch (ParseException e) {
    e.printStackTrace();
}

将输出12/10/2003