我的日期格式为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
。对此有任何意见吗?
答案 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