public static void main(String[] args) {
System.out.println(checkDate("20150823"));
System.out.println(checkDate("20150831"));
System.out.println(checkDate("20150832"));
System.out.println(checkDate("a20150823"));
System.out.println(checkDate("20150a23"));
System.out.println(checkDate("2015082a"));
System.out.println(checkDate("20150823a"));
System.out.println(checkDate("2015-08-23"));
}
public static boolean checkDate(String s1) {
if (s1 == null || s1.isEmpty()) {
return false;
}
SimpleDateFormat format = new SimpleDateFormat("yyyyMMdd");
format.setLenient(false);
Date date = null;
try {
date = format.parse(s1);
} catch (ParseException ex) {
return false;
}
String s2 = format.format(date);
return s1.equals(s2);
}