我遇到了日期格式的问题。我正在使用SimpleDateFormat来解析日期,并使用MM/dd/yyyy格式解析日期,如果输入正确,如11/11/2011,则可以正常工作,并返回正确的结果(Fri Nov 11 00: 00:00 IST 2011)。
但是,如果我们输入11/11/11作为输入,则无法正常工作(Wed Nov 11 00:00:00 IST 11),也不会提供解析错误。
但是,如果我们输入11/11/11作为输入,则无法正常工作(Wed Nov 11 00:00:00 IST 11),也不会提供解析错误。
public static void main(String[] args) {
String format = "MM/dd/yyyy";
String dt = "11/11/11";
Date date = null;
try {
date = TestDate.parDate(dt, format);
} catch (ParseException e) {
e.printStackTrace();
}
System.out.println(date);
}
public static Date parDate(String value, String dateFormat) throws ParseException {
Date date = null;
date = new SimpleDateFormat(dateFormat).parse(value);
return date;
}
yyyy
)您需要明确地写出年份需要为4位数字(yyyy
)。 - jhamonSimpleDateFormat
类。它不仅过时,而且也出了名的麻烦。今天我们有更好的选择,java.time
,这是现代Java日期和时间API。 - Ole V.V.