/**
* 判断当前时间是否在指定范围时间内
*
* @param businessTime 时间段 12:00--13:00
* @return true-在 false-不在
*/
public static Boolean judgeTheTimeRange(String businessTime) {
try {
String[] times = businessTime.split("--");
String[] time1 = times[0].split(":");
String[] time2 = times[1].split(":");
//当前时间
Calendar currentDate = Calendar.getInstance();
currentDate.setTime(new Date());
//开始时间
Calendar min = Calendar.getInstance();
min.set(Calendar.YEAR, currentDate.get(Calendar.YEAR));
min.set(Calendar.MONTH, currentDate.get(Calendar.MONTH));
min.set(Calendar.DAY_OF_MONTH, currentDate.get(Calendar.DAY_OF_MONTH));
min.set(Calendar.HOUR_OF_DAY, Integer.parseInt(time1[0]));
min.set(Calendar.MINUTE, Integer.parseInt(time1[1]));
min.set(Calendar.SECOND, 0);
min.set(Calendar.MILLISECOND, 0);
//结束时间
Calendar max = Calendar.getInstance();
max.set(Calendar.YEAR, currentDate.get(Calendar.YEAR));
max.set(Calendar.MONTH, currentDate.get(Calendar.MONTH));
max.set(Calendar.DAY_OF_MONTH, currentDate.get(Calendar.DAY_OF_MONTH));
max.set(Calendar.HOUR_OF_DAY, Integer.parseInt(time2[0]));
max.set(Calendar.MINUTE, Integer.parseInt(time2[1]));
max.set(Calendar.SECOND, 0);
max.set(Calendar.MILLISECOND, 0);
if (max.getTimeInMillis() >= min.getTimeInMillis()) {
if (currentDate.getTimeInMillis() >= min.getTimeInMillis() && currentDate.getTimeInMillis() <= max.getTimeInMillis()) {
return true;
} else {
return false;
}
} else {
max.set(Calendar.DAY_OF_MONTH, currentDate.get(Calendar.DAY_OF_MONTH) + 1);
if (currentDate.getTimeInMillis() >= min.getTimeInMillis() && currentDate.getTimeInMillis() <= max.getTimeInMillis()) {
return true;
} else {
return false;
}
}
} catch (Exception e) {
return false;
}
}