我想显示当前日期和最近 5 天的日期
2013/04/24
2013/04/23
2013/04/22
2013/04/21
2013/04/20
我的代码如下..
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
Calendar cal = Calendar.getInstance();
Date date=cal.getTime();
for (int i=0;i<5;i++){
cal.add(Calendar.DAY_OF_MONTH,-1);
date=cal.getTime();
String reportDate = sdf.format(date);
System.out.println("reportDate :" + reportDate);
}
这里我得到如下输出..
reportDate :2013/04/23
reportDate :2013/04/22
reportDate :2013/04/21
reportDate :2013/04/20
reportDate :2013/04/19
但我想要最近五天的日期,包括当前日期...有人可以帮忙吗?
最佳答案
试试这个!!
public static void getDate(){
GregorianCalendar cal = new GregorianCalendar();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
int day = cal.get(GregorianCalendar.DAY_OF_MONTH);
for(int i=day; i > (day-5); i--){
cal.set(GregorianCalendar.DAY_OF_MONTH, i);
Date date = cal.getTime();
System.out.println(sdf.format(date));
}
}
v 2.0
public static void getDate1(){
GregorianCalendar cal = new GregorianCalendar();
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MM/dd");
cal.set(2013, 0, 1); // this is extreme case!!!
int day = cal.get(GregorianCalendar.DAY_OF_MONTH);
int month = cal.get(GregorianCalendar.MONTH);
int year = cal.get(GregorianCalendar.YEAR);
for(int i=day; i > (day-5); i--){
cal.set(year, month, i);
Date date = cal.getTime();
System.out.println(sdf.format(date));
}
}
这是输出:
2013/01/01
2012/12/31
2012/12/30
2012/12/29
2012/12/28
关于java - 在java中显示当前日期和最近5天的日期,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16186938/