| | |
| | | import java.text.ParseException; |
| | | import java.text.SimpleDateFormat; |
| | | import java.time.*; |
| | | import java.time.format.DateTimeFormatter; |
| | | import java.time.temporal.ChronoUnit; |
| | | import java.time.temporal.TemporalAdjusters; |
| | | import java.util.*; |
| | | import java.util.Date; |
| | | |
| | | import cn.hutool.core.date.DateUnit; |
| | | import org.apache.commons.lang3.RandomStringUtils; |
| | | import org.apache.commons.lang3.StringUtils; |
| | | |
| | |
| | | |
| | | public static void main(String[] args) { |
| | | try { |
| | | Date date = getISO8601DateByStr("2024-04-15T07:46:36.014+08:00"); |
| | | Date date1 = getISO8601DateByStr("2024-06-14T08:46:36.014+08:00"); |
| | | System.out.println(daysBetweenDates11(date1,date)+1); |
| | | // Date date = getISO8601DateByStr("2024-04-15T07:46:36.014+08:00"); |
| | | // Date date1 = getISO8601DateByStr("2024-06-14T08:46:36.014+08:00"); |
| | | // System.out.println(DateUtil.afterMinutesDate(-5)); |
| | | |
| | | |
| | | Date startTime = DateUtil.StringToDate("2024-05-01 08:00:00" ,"yyyy-MM-dd HH:mm:ss"); |
| | | Date endTime = DateUtil.StringToDate("2024-05-01 17:00:00" ,"yyyy-MM-dd HH:mm:ss"); |
| | | Long intervalTime = 35L; |
| | | |
| | | |
| | | DateUtil.checkDateInterval( startTime.toInstant() |
| | | .atZone(ZoneId.systemDefault()) |
| | | .toLocalDateTime(), endTime.toInstant() |
| | | .atZone(ZoneId.systemDefault()) |
| | | .toLocalDateTime(),intervalTime); |
| | | |
| | | } catch (Exception ex) { |
| | | ex.printStackTrace(); |
| | |
| | | } |
| | | |
| | | /** |
| | | * X 分钟后时间 |
| | | * @param minutes |
| | | * @return |
| | | */ |
| | | public static Date afterMinutesDate(Date date,Integer minutes){ |
| | | Calendar cal = Calendar.getInstance(); |
| | | cal.setTime(date); |
| | | cal.add(Calendar.MINUTE,minutes); |
| | | return cal.getTime(); |
| | | } |
| | | |
| | | /** |
| | | * LocalDateTime to date |
| | | * @param now |
| | | * @return |
| | |
| | | System.out.println(time); |
| | | return time; |
| | | } |
| | | |
| | | |
| | | |
| | | public static List<LocalDateTime> checkDateInterval(LocalDateTime localStartTime,LocalDateTime localEndTime,Long interval){ |
| | | List<LocalDateTime> segments = new ArrayList<>(); |
| | | LocalDateTime current = localStartTime; |
| | | while (current.isBefore(localEndTime)) { |
| | | segments.add(current); |
| | | current = current.plus(interval, ChronoUnit.MINUTES); |
| | | } |
| | | return segments; |
| | | |
| | | } |
| | | |
| | | |
| | | |
| | | } |