以下程序是实现输入日期yyyy-mm-dd输出日期的.但如果输入月份13就会进一年当1月处理.天出也是这样.
高手帮忙改一下,能提示输入月份日期超过可以提示的错误的.谢谢!!
import java.util.*;
import java.io.*;
import java.text.*;
public class MyCalendar1{
public static void main(String[] args){
  DateFormat bpddf=DateFormat.getDateInstance();
BufferedReader reader=new BufferedReader(new InputStreamReader(System.in));
    String bpds="";
    Date publishDate=null;
  
String[]days={"SUNDAY","MONDAY","TUESDAY","WEDNESDAY","THURSDAY","FRIDAY","SATURSDAY"};
Calendar c=GregorianCalendar.getInstance();
     boolean b=true;
while(b){
System.out.print("Please input YEAR-MONTH-DAY");
     System.out.println();
try{    bpds=reader.readLine();  
         publishDate=bpddf.parse(bpds);
        
   b=false;

}catch(Exception e){
System.out.print("ERROR\n");
continue;
}
}
  int year,month,day;String date;
       year=publishDate.getYear()+1900;
       month=publishDate.getMonth();
       day=publishDate.getDate();
   
     
       System.out.println(year+" "+month+" "+day);
         c.set(year,month,day);
System.out.println("The day is"+days[c.get(Calendar.DAY_OF_WEEK)-1]);
}
}