您的位置:首页 > 编程语言 > Java开发

获得两个日期之间的所有日期

2013-05-22 11:09 169 查看
在工作中要出报表,列出网站每一天的注册人数,没有注册的就为0。所以要列出两个日期之间的所有日期。看到了一段代码 很实用:

import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Calendar;

public class R {
private static final DateFormat FORMATTER = new SimpleDateFormat("yyyy-MM-dd");
public static void main(String[] args) throws ParseException {
Calendar startDay = Calendar.getInstance();
Calendar endDay = Calendar.getInstance();

startDay.setTime(FORMATTER.parse("2010-02-01"));
endDay.setTime(FORMATTER.parse("2010-05-09"));

printDay(startDay, endDay);
}

private static void printDay(Calendar startDay, Calendar endDay) {
// 给出的日期开始日比终了日大则不执行打印
if (startDay.compareTo(endDay) >= 0) {
return;
}
// 现在打印中的日期
Calendar currentPrintDay = startDay;
while (true) {
// 日期加一
currentPrintDay.add(Calendar.DATE, 1);
// 日期加一后判断是否达到终了日,达到则终止打印
if (currentPrintDay.compareTo(endDay) == 0) {
break;
}
// 打印日期
System.out.println(FORMATTER.format(currentPrintDay.getTime()));
}
}
}

就能列出全部的日期了。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  java日期处理