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

Java 日期相关问题
我想得到 2011-08-11 13:00:00 到 2011-09-13 12:00:00 时间段内的日期列表,最小时间单位是小时

效果如下:

2011-08-11 13:00:00
2011-08-11 14:00:00
...
...
2011-09-13 11:00:00
2011-09-13 12:00:00

我现在得到了日期列表
 
2011-08-11
2011-08-12
...
...
2011-09-12
2011-09-13

不知道后面的怎么弄了,对日期的操作用的比较少,现在这个问题又比较急,有知道的给点思路...谢了啊!!!

------解决方案--------------------
Java code
import org.joda.time.DateTime;

DateFormat formatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");

DateTime begin = new DateTime(2011,8,11,13,00,00);
DateTime end = new DateTime(2011,9,13,12,00,00);
for(DateTime dt = begin;dt.isBefore(end);dt= dt.plusHours(1)){
    System.out.println(formatter.format(dt.toDate()));
}

------解决方案--------------------
[code=Java][/code]
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
GregorianCalendar begin = new GregorianCalendar(2011,8,11,13,00,00);
GregorianCalendar end = new GregorianCalendar(2011,9,13,12,00,00);
for(GregorianCalendar gc=begin; !gc.after(end); gc.add(Calendar.HOUR, 1))
System.out.println(sdf.format(gc.getTime()));
[code=Java][/code]