SimpleDateFormat sdf = new SimpleDateFormat("yyyymmdd");pre = sdf.parse("20050615");
last = sdf.parse("20050715");long millisecond = last.getTime() - pre.getTime(); //millisecond =60000
days = (int)(millisecond/24/60/60/1000);//day=0怎么会这样,有一个月的差距的啊,怎么只有60000ms
谁能帮帮我啊

解决方案 »

  1.   

    SimpleDateFormat的格式控制串中,"m"表示分钟(minute),“M”表示月份(Month)。
    应该是:
    SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
      

  2.   

    恩!steedhorse(晨星)说的很清楚了
      

  3.   

    楼上说的对,还可以用Date类,格式
        Date pre=new Date(105,6,15);//year=年份-1900
        Date last=new Date(105,7,15);
        Date lasting=new Date;
        lasting.setTime(pre.getTime()-last.getTime());
        要注意的是Date类很多方法已经Deprecated了.
      

  4.   

    使用SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");
    这个比较简单。