Date d1,d2;
int i=(d1.getTime()-d2.getTime())/3600/24;
if(i<0) i=0-i;

解决方案 »

  1.   

    可以将两个时间转换为Unix中使用的时间戳,然后计算两个时间戳的差,最后可以将差值转换为普通的时间格式!(由这方面的类)
      

  2.   

    to: shihb()
    把時間都設成0點不就完了!
      

  3.   

    long subTempTime = dDate2.getTime()-dDate1.getTime() ;  
    int day = (int)(subTempTime/86400000) ;
       int hour = (int)((subTempTime%86400000)/3600000) ;
       int minute = (int)(((subTempTime%86400000)%3600000)/60000);
       int second = (int) ((((subTempTime%86400000)%3600000)%24000)/1000);
       currentTime = String.valueOf(day)+"&Igrave;ì"+String.valueOf(hour)+"&ETH;&iexcl;&Ecirc;±"+String.valueOf(minute)+"·&Ouml;"+String.valueOf(second)+"&Atilde;&euml;";
      

  4.   

    public static int getDayGap(Date date1,Date date2) {
        GregorianCalendar c1 = new GregorianCalendar();
        GregorianCalendar c2 = new GregorianCalendar();
        c1.setTime(date1);
        c2.setTime(date2);
        int year1 = c1.get(Calendar.YEAR);
        int year2 = c2.get(Calendar.YEAR);
        int yearday = 0;
        for(int i = Math.min(year1,year2); i < Math.max(year1,year2); i ++) {
          yearday += c1.isLeapYear(i) ? 366 : 365;
        }
        yearday *= compareDate(date1 , date2);    return yearday + c2.get(Calendar.DAY_OF_YEAR) - c1.get(Calendar.DAY_OF_YEAR) ;
      }
      

  5.   

    public int getDays(Date sd,Date ed){
        return (ed.getTime() - sd.getTime()) / (3600*24*1000)
    }