形成两个gragoriancalendar,然后使用里面的方法比较。

解决方案 »

  1.   

    gragoriancalendar 从来没听说过能说得具体些吗?
      

  2.   

    String strDate1 = "2002-01-21";
            String strDate2 = "2002-01-25";
            SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
            Date d1 = format.parse(strDate1);
            Date d2 = format.parse(strDate2);
            System.out.println((d2.getTime() - d1.getTime()) / 3600000 / 24);
      

  3.   

    我在JSP里调用的出错说是
    Ambiguous class: java.sql.Date and java.util.Date
                       Date d1 = format.parse(st);
      

  4.   

    因为java里有不止一个Date类,我没记错的话你应该用的是util里的Date类
    在你的程序前把这个类import进去,或者在你的程序里这么写
    java.util.Date d1 = format.parse(st);
      

  5.   

    hayai(生命树) 写的很清楚,同意。jishuo() 遇到的问题是因为,java中有两个Date类,不过他们所在的包不同,一个是java.sql.Date,另一个是java.util.Date;编译器不知道你要用那个类,当然会出错。解决的办法就是,加上这个类的package:java.util.Date d1 = format.parse(st);
      

  6.   

    我编程习惯,import时从来不用统配符*.
    jbuilder 8.0可以设定import 级别。
    如果你一定喜欢用*,像我很多同事,使用Date时,就写成java.util.Date,这已经成了他们的习惯。
      

  7.   

    String strDate1 = "2002-01-21";
    String strDate2 = "2002-01-25";
    SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd");
    java.util.Date Date d1 = format.parse(strDate1);
    java.util.Date Date d2 = format.parse(strDate2);java.util.Calendar calendar1 = Calendar.getInstance();
    java.util.Calendar calendar2 = Calendar.getInstance();
    calendar1.setTime(d1);
    calendar2.setTime(d2);while (calendar1.before(calendar2)) {
        
        /** @todo you can use calendar.getTime() do sth */
        calendar1.add(Calendar.DAY_OF_MONTH, 1);
    }