一、获取最近一周时间范围
// 获得当前日期与本周一相差的天数 private int getMondayPlus() { Calendar cd = Calendar.getInstance(); // 获得今天是一周的第几天,星期日是第一天,星期二是第二天...... int dayOfWeek = cd.get(Calendar.DAY_OF_WEEK); if (dayOfWeek == 1) { return -6; } else { return 2 - dayOfWeek; } } // 获得当前周--周一的日期 private String getCurrentMonday() { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); int mondayPlus = getMondayPlus(); GregorianCalendar currentDate = new GregorianCalendar(); currentDate.add(GregorianCalendar.DATE, mondayPlus); Date monday = currentDate.getTime(); return dateFormat.format(monday); } // 获得当前周--周日的日期 private String getPreviousSunday() { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); int mondayPlus = getMondayPlus(); GregorianCalendar currentDate = new GregorianCalendar(); currentDate.add(GregorianCalendar.DATE, mondayPlus + 6); Date sunday = currentDate.getTime(); return dateFormat.format(sunday); } |
二、获取最近一月时间范围
// 获得当前月--开始日期 private String getMinMonthDate() { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); calendar.setTime(new Date()); calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMinimum(Calendar.DAY_OF_MONTH)); return dateFormat.format(calendar.getTime()); } // 获得当前月--结束日期 private String getMaxMonthDate() { SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd"); Calendar calendar = Calendar.getInstance(); calendar.setTime(new Date()); calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); return dateFormat.format(calendar.getTime()); } |