Date d1 = new Date();
Date d2 = new Date();
long l = d2.getTime() -  d1.getTime();//以毫秒为单位

解决方案 »

  1.   

    import java.util.*;
    public class TestDate {
      public static void main(String args[]){
        /*
         ex . 
           java TestDate 1999 0 1 1999 8 1
               to get days between 1999-01-01 and 1999-09-01
              (remember months are zero-based...)
       */
      
        TestDate a = new TestDate(args);
        }  TestDate(String args[]) {
        Calendar c1 = new GregorianCalendar();;
        Calendar c2 = new GregorianCalendar();;    //  need more error checking here...
        c1.set(Integer.parseInt(args[0]),
               Integer.parseInt(args[1]) , 
               Integer.parseInt(args[2]), 0, 0, 0); 
        c2.set(Integer.parseInt(args[3]),
              Integer.parseInt(args[4]) , 
              Integer.parseInt(args[5]), 0, 0, 0);     System.out.println
           (daysBetween(c1.getTime(),c2.getTime()) +
            " day(s) between " + args[0] + "-" + args[1] + "-" + args[2] +
            " and " + args[3] + "-" + args[4] + "-" + args[5]);
        }  static final long ONE_HOUR = 60 * 60 * 1000L;
      public long daysBetween(Date d1, Date d2){
        return ( (d2.getTime() - d1.getTime() + ONE_HOUR) / 
                      (ONE_HOUR * 24));
         }   
      }
      

  2.   

    文档区有两篇文章专门将java的时间和日期处理的。