SimpleDateFormat myFormatter = new SimpleDateFormat("yyyy-MM-dd");
   java.util.Date date= myFormatter.parse("2003-12-1"); 
   java.util.Date  mydate= myFormatter.parse("2001-12-1");
   day=(date.getTime()-mydate.getTime())/(24*60*60*1000);
   int month=(int)(day/30);
   out.println(month);
   out.println("<br>");

解决方案 »

  1.   

    //一年前的日期(闰年的话就是366) 
       java.util.Date myDate=new java.util.Date();  
       long myTime=(myDate.getTime()/1000)-60*24*60*365;
       myDate.setTime(myTime*1000);
       String mDate=formatter.format(myDate);
       out.println(mDate);
       out.println("<br>");
      

  2.   

    String str = "200312";                                                    
    SimpleDateFormat format = new SimpleDateFormat("yyyyMM");                 
    Date date = format.parse(str);                                            
    Calendar calendar = Calendar.getInstance(TimeZone.getTimeZone("CTT"));    
    calendar.setTime(date);                                                   
    calendar.set(Calendar.MONTH, calendar.get(Calendar.MONTH)-24);//前24个月  
    System.out.println(format.format(calendar.getTime()));                    
      

  3.   

    Calendar calendar = Calendar.getInstance();//得到当前日期。
    calendar.add(Calendar.MONTH,-24);//减去24月。