//获得当前日期前几天的日期(不包含当天),dataStr为给定日期,count为前几天
public String getBeforeDate(String dateStr,int count){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String maxDateStr = dateStr;
String minDateStr = "";
Calendar calc =Calendar.getInstance();
try {
calc.setTime(sdf.parse(maxDateStr));
calc.add(calc.DATE, count);
Date minDate = calc.getTime();
minDateStr = sdf.format(minDate);
return minDateStr;
} catch (ParseException e1) {
e1.printStackTrace();
}
return null;
}
//获取当前日期前一天的日期:
public String lastDate() {
Calendar calendar = new GregorianCalendar();
Date date=new Date();
calendar.setTime(date);
calendar.add(calendar.DATE,-1);//把日期往后增加一天.整数往后推,负数往前移动
date=calendar.getTime();
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
return formatter.format(date);
}
//获得给定时间前30天的所有日期(包含给定时间)
public void getLastDays(String maxDateStr,int count){
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
String minDateStr = "";
Calendar calc =Calendar.getInstance();
try {
for(int i=0;i<count;i++){
calc.setTime(sdf.parse(maxDateStr));
calc.add(calc.DATE, -i);
Date minDate = calc.getTime();
minDateStr = sdf.format(minDate);
System.out.println(i+":minDateStr:"+minDateStr);//minDateStr:2017-01-09 正确!!!!
}
} catch (ParseException e1) {
e1.printStackTrace();
}
}