需求
开始时间2018-11-10 06:00:00
,结束时间2018-11-10 11:00:00
,
要求是改成字符串,时间范围为2小时,结果
[6-7],[7-8],[8-9],[9-10],[10-11],[11-12]
实现
stPptnR为实体类,其中包含beginTm
、endTm
、timeRange
(时间范围)
private String getTimeRangeStr(StPptnR stPptnR) throws ParseException {
SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd HH");
String beginTm = stPptnR.getBeginTm();
String endTm = stPptnR.getEndTm();
int timeRange = stPptnR.getTimeRange();//时间范围
Date beginT = df.parse(beginTm);
Date endT = df.parse(endTm);
Calendar calBegin = Calendar.getInstance();
calBegin.setTime(beginT);//开始
Calendar calEnd = Calendar.getInstance();
calEnd.setTime(endT);//结束
String timeRangeStr="";
for(;!calBegin.after(calEnd);){
int minHour = calBegin.get(Calendar.HOUR_OF_DAY);
timeRangeStr += "["+ minHour+"-"+(minHour+timeRange)+"],";
calBegin.add(Calendar.HOUR, timeRange);// timeRange小时
}
timeRangeStr = timeRangeStr.substring(0, timeRangeStr.length()-1);
return timeRangeStr;
}