diff --git a/src/main/java/com/yn/bftl/thirdparty/common/util/DateTimeUtils.java b/src/main/java/com/yn/bftl/thirdparty/common/util/DateTimeUtils.java index 4fd96c0..696502c 100644 --- a/src/main/java/com/yn/bftl/thirdparty/common/util/DateTimeUtils.java +++ b/src/main/java/com/yn/bftl/thirdparty/common/util/DateTimeUtils.java @@ -5,11 +5,9 @@ import cn.hutool.core.util.ObjectUtil; import org.joda.time.DateTime; -import java.time.Instant; -import java.time.LocalDateTime; -import java.time.ZoneId; -import java.time.ZonedDateTime; +import java.time.*; import java.time.format.DateTimeFormatter; +import java.time.format.DateTimeParseException; import java.util.Locale; /** @@ -34,6 +32,23 @@ ZoneId zoneId = ZoneId.systemDefault(); return Instant.ofEpochMilli(timeInMillis).atZone(zoneId).toLocalDateTime(); } + public static LocalDateTime getLocalDateTimeByRFC3339Str(String dateStr) { + // 定义输入格式 + DateTimeFormatter inputFormatter = DateTimeFormatter.ofPattern("yyyy-MM-dd'T'HH:mm:ssXXX[VV]"); + LocalDateTime localDateTime = LocalDateTime.now(); + try { + // 解析输入字符串为 OffsetDateTime + OffsetDateTime offsetDateTime = OffsetDateTime.parse(dateStr, inputFormatter); + + // 将 OffsetDateTime 转换为 LocalDateTime + localDateTime = offsetDateTime.toLocalDateTime(); + + System.out.println("LocalDateTime: " + localDateTime); + } catch (DateTimeParseException e) { + System.out.println("Error parsing date: " + e.getMessage()); + } + return localDateTime; + } public static String setDateTimeToRFC3339(String dateStr) { if(ObjectUtil.isNotEmpty(dateStr)) {