來自Java doc。
從給定字符串的開頭解析文本以生成日期。 該方法可能不使用給定字符串的整個文本。
所以它只需要12/31/2014
12/31/2014XYZ
並採取有效的格式。
如:
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
try {
java.util.Date date=sdf.parse("12/31/2014AnyThing");
System.out.println("Valid Date "+date);
} catch (ParseException e) {
System.out.println("Invalid Date");
}
try {
java.util.Date date=sdf.parse("AnyThing12/31/2014");
System.out.println("Valid Date "+date);
} catch (ParseException e) {
System.out.println("Invalid Date");
}
輸出地說:
Valid Date Wed Dec 31 00:00:00 IST 2014
Invalid Date
同在這裏。
SimpleDateFormat sdf = new SimpleDateFormat("MM/dd/yyyy");
try {
java.util.Date date=sdf.parse("12/31/2014XYZ");
System.out.println("Valid Date "+date);
} catch (ParseException e) {
System.out.println("Invalid Date");
}
try {
java.util.Date date=sdf.parse("XYZ12/31/2014");
System.out.println("Valid Date "+date);
} catch (ParseException e) {
System.out.println("Invalid Date");
}
輸出地說:
Valid Date Wed Dec 31 00:00:00 IST 2014
Invalid Date
編輯:
@aioobe答案將提供的解決方案並不以此爲有效的日期格式。
相關問題:http:// stackoverflow。com/questions/3025942/is-this-a-java-dateformat-bug – aioobe 2014-09-29 09:43:44