diff --git a/hutool-core/src/main/java/org/dromara/hutool/core/date/format/parser/PureDateParser.java b/hutool-core/src/main/java/org/dromara/hutool/core/date/format/parser/PureDateParser.java index 92138a94a..10a5143d3 100644 --- a/hutool-core/src/main/java/org/dromara/hutool/core/date/format/parser/PureDateParser.java +++ b/hutool-core/src/main/java/org/dromara/hutool/core/date/format/parser/PureDateParser.java @@ -16,6 +16,7 @@ import org.dromara.hutool.core.date.DateException; import org.dromara.hutool.core.date.DatePattern; import org.dromara.hutool.core.date.DateTime; import org.dromara.hutool.core.date.format.DefaultDateBasic; +import org.dromara.hutool.core.math.NumberUtil; /** * 纯数字的日期字符串解析,支持格式包括; @@ -24,6 +25,7 @@ import org.dromara.hutool.core.date.format.DefaultDateBasic; *
  • yyyyMMddHHmmssSSS
  • *
  • yyyyMMdd
  • *
  • HHmmss
  • + *
  • 毫秒时间戳
  • * * * @author looly @@ -49,6 +51,9 @@ public class PureDateParser extends DefaultDateBasic implements DateParser { return new DateTime(source, DatePattern.PURE_DATE_FORMAT); } else if (length == DatePattern.PURE_TIME_PATTERN.length()) { return new DateTime(source, DatePattern.PURE_TIME_FORMAT); + } else if(length == 13){ + // 时间戳 + return new DateTime(NumberUtil.parseLong(source)); } throw new DateException("No pure format fit for date String [{}] !", source); diff --git a/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java b/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java index 67cdbcbec..5aa73bee3 100644 --- a/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java +++ b/hutool-core/src/test/java/org/dromara/hutool/core/date/DateUtilTest.java @@ -1130,4 +1130,11 @@ public class DateUtilTest { Assertions.assertNotNull(parse); Assertions.assertEquals("2019-10-22 09:56:03", parse.toString()); } + + @Test + public void issueI8NMP7Test() { + final String str = "1702262524444"; + final DateTime parse = DateUtil.parse(str); + Assertions.assertEquals("2023-12-11 10:42:04", Objects.requireNonNull(parse).toString()); + } }