import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;public class DateCheck {
  public static boolean isDate(String sDate, String sFmt) {
    Date dt = null;
    boolean flag = false;
    try {
      DateFormat df = new SimpleDateFormat(sFmt);
      df.setLenient(false);
      dt = df.parse(sDate);
      System.out.println(dt);
      int year = dt.getYear() + 1900;
      System.out.println("year=" + year);
      int month = dt.getMonth() + 1;
      System.out.println("month=" + month);
      int date = dt.getDate();
      System.out.println("date=" + date);
      if (year != 0 && month != 0 && date != 0) flag = true;
      System.out.println("flag=" + flag);
    }
    catch (ParseException e) {
      return false;
    }
    return true;
  }
  public static void main(String[] args){
    String strDate = "2005-03-25";
    String str = "yyyy-mm-dd";
    DateCheck.isDate(strDate,str);
  }
}
为什么输入月份的时候老是:1,不论输入几月,那个月份都是1。而不是实际月份。希望大家看看。