两个日期 2008-10-01 , 2010-10-01 求它们中间的每一天的日期 ,如 2008-10-01
2008-10-02
2008-10-03
...
..
2010-10-01 如何做啊?

解决方案 »

  1.   

    使用Calender类做日期加法,例子:
        Calendar cal=Calendar.getInstance();
        cal.setTime(date);
        cal.add(Calendar.DAY_OF_MONTH,1);
        date=cal.getTime();
    循环即可得到所有日期。
      

  2.   

    Date date0 = new SimpleDateFormat("yyyy-MM-dd").parse("2008-10-01");
    Date date1 = new SimpleDateFormat("yyyy-MM-dd").parse("2010-10-01");
    Calendar cal = Calendar.getInstance();
    cal.setTime(date0);
    while(cal.getTime().compareTo(date1)<=0){
      //...
      cal.add(Calendar.DAY_OF_MONTH,1);
    }
      

  3.   

    SimpleDateFormat   myFormatter   =   new   SimpleDateFormat("yyyy-MM-dd");  
    java.util.Date   date=   myFormatter.parse("2010-10-01");    
    java.util.Date   mydate=   myFormatter.parse("2008-10-01");  long day=(date.getTime()-mydate.getTime())/(24*60*60*1000); 
     
    System.out.println("相差的日期:"   +   day);
      

  4.   

    import java.util.*;
    import java.text.*;public class DisplayDateEveryday {
    public static void main(String args[]){

    display("2008-08-08", "2008-08-24");

    }

    public static void display(String dateFirst, String dateSecond){
    SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd");

    try{
    Date dateOne = dateFormat.parse(dateFirst);
    Date dateTwo = dateFormat.parse(dateSecond);

    Calendar calendar = Calendar.getInstance();

    calendar.setTime(dateOne);

    while(calendar.getTime().before(dateTwo)){
    System.out.println(dateFormat.format(calendar.getTime()));

    calendar.add(Calendar.DAY_OF_MONTH, 1);
    }
    }
    catch(Exception e){
    e.printStackTrace();
    }

    }
    }
    2008-08-08
    2008-08-09
    2008-08-10
    2008-08-11
    2008-08-12
    2008-08-13
    2008-08-14
    2008-08-15
    2008-08-16
    2008-08-17
    2008-08-18
    2008-08-19
    2008-08-20
    2008-08-21
    2008-08-22
    2008-08-23
      

  5.   

    calendar.add(Calendar.DAY_OF_MONTH, 1);                DAY_OF_MONTH的基础上+1 为什么不是DAY_OF_YEAR ?