|  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | return new Timestamp(System.currentTimeMillis()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | public static Date getDateFromString2(String strDate) { | 
|---|
|  |  |  | if (StringUtils.isEmpty(strDate)) { | 
|---|
|  |  |  | return  null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | try { | 
|---|
|  |  |  | return sdfLongTimePlus.parse(strDate); | 
|---|
|  |  |  | } catch (Exception ex) { | 
|---|
|  |  |  | return null; | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | // ----------------------------------------------------------------------- | 
|---|
|  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 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; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|