日期:2014-05-20  浏览次数:20691 次

时间问题求帮助
如果我知道起始时间如19841008和结束时间19841019
怎么得到期间的这段日期?
麻烦告诉我下,谢谢了

------解决方案--------------------
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;
import java.util.Date;

public class Test3 {

  public static void main(String[] args) throws ParseException {    
    SimpleDateFormat sim = new SimpleDateFormat( "yyyyMMdd ");
    Date date0 = sim.parse( "19841008 ");
    Date date1 = sim.parse( "19841015 ");
    Calendar cal0 = Calendar.getInstance();
    Calendar cal1 = Calendar.getInstance();
    cal0.setTime(date0);
    cal1.setTime(date1);
    for(Calendar i=cal0; i.compareTo(cal1) <= 0; i.add(Calendar.DATE, 1)){
      System.out.println(sim.format(i.getTime()));
    }
  }
}

Calendar类中对当前时间部分的增加或减少都是使用 aad() 方法,其中有两个参数,第一个参数是需要变化的日期部分,通常用 Calendar.XXXX 来表示,是一个常量;第二参数是变化量,正数表示增加,负数表示减少。

GregorianCalendar是Calendar的子类,与Calendar类似。