package com.skyline.electricity.utils;
|
|
import java.text.*;
|
import java.util.*;
|
|
public class Timeutils
|
{
|
public static List<String> getIntervalTimeList(final String start, final String end, final int interval) {
|
Date startDate = DateUtils.convertString2Date("yyyy-MM-dd HH:mm:ss", start);
|
final Date endDate = DateUtils.convertString2Date("yyyy-MM-dd HH:mm:ss", end);
|
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
|
final List<String> list = new ArrayList<String>();
|
while (startDate.getTime() < endDate.getTime()) {
|
list.add(DateTimeUtils.convertDate2String("yyyy-MM-dd HH:mm:ss", startDate));
|
final Calendar calendar = Calendar.getInstance();
|
final Calendar calendar2 = Calendar.getInstance();
|
calendar.setTime(startDate);
|
calendar2.setTime(endDate);
|
if (sdf.format(calendar.getTime()).compareTo(sdf.format(calendar2.getTime())) < 0) {
|
calendar.add(12, interval);
|
calendar.set(11, 0);
|
calendar.set(12, 0);
|
calendar.set(13, 0);
|
}
|
final Calendar calendarEnd = Calendar.getInstance();
|
final String endTime = sdf.format(endDate);
|
final String time = sdf.format(calendar.getTime());
|
final int flag = time.compareTo(endTime);
|
if (flag < 1) {
|
calendarEnd.setTime(startDate);
|
calendarEnd.set(11, 23);
|
calendarEnd.set(12, 59);
|
calendarEnd.set(13, 59);
|
list.add(DateTimeUtils.convertDate2String("yyyy-MM-dd HH:mm:ss", calendarEnd.getTime()));
|
}
|
if (calendar.getTime().getTime() > endDate.getTime()) {
|
list.add(DateTimeUtils.convertDate2String("yyyy-MM-dd HH:mm:ss", endDate));
|
startDate = calendar.getTime();
|
}
|
else {
|
startDate = calendar.getTime();
|
}
|
}
|
return list;
|
}
|
}
|