指定された形式に対して日付の有効性を確認する必要があります。グーグルで調べたところ、次のものが見つかりました。
public static boolean isThisDateValid(String dateToValidate, String dateFromat){
SimpleDateFormat sdf = new SimpleDateFormat(dateFromat);
sdf.setLenient(false);
ParsePosition position = new ParsePosition(0);
Date date = sdf.parse(dateToValidate,position);
return date != null && position.getIndex() == dateFromat.length();
}
しかし、それは機能していません..これを実行すると、falseではなくtrueが返されました。指定された月の値は無効です。つまり、13です
System.out.println(isThisDateValid("20101331","yyyymmdd"));
何か見逃しましたか?