没有现成的函数,只能自己算了。只有比较大小的函数befor() after()

解决方案 »

  1.   

    估计只要自己写,反正先判断是befor()还是after(),再通过循环add方法可以出来。
      

  2.   

    binriyue(日月),你说的“通过循环add方法”是什么意思?能否告诉我呢?有处理这个问题的程序吗?
      

  3.   

    SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
    Date thisFirst = sdf.parse("2002-07-10");
    Date thisSecond = sdf.parse("2002-08-12");
    Date thisFirst = Calendar.getInstance();
    Date thisSecond = Calendar.getInstance();
    Calendar calFirst = java.util.Calendar.getInstance();
    Calendar calSecond = java.util.Calendar.getInstance();
    calFirst.setTime(thisFirst);
    calSecond.setTime(calSecond);
    int diff = 0;
    if(thisFirst.after(thisSecond)){
      diff--;
      while(true){
        calFirst.add(Calendar.HOUR,diff*24);
        如果取得的年月日相等,则
        break;
      }
    }else{
      diff++;
      while(true){  }
    }
      
    }
      

  4.   

    我觉得可以用下面的方法:
    int days;
    days = (int)((data1.getTime() - data2.getTime()) / (1000 * 60 * 60 * 24));
    得到的days就是data1和data2之间相差的天数。
      

  5.   

    应该先除,再减
    int days;
    days = ( int )( data1.getTime() / (1000 * 60 * 60 * 24) - data2.getTime() / (1000 * 60 * 60 * 24) );