【发布时间】:2020-05-27 11:53:08
【问题描述】:
我正在尝试使用 JSR-310 时间解析 "2020-01-12+01:00"。
我通过 DateTimeFormatter.ofPattern("yyyy-MM-ddVV") 阅读它,但是现在如果我想通过 Instant.from(DateTimeFormatter.ofPattern("yyyy-MM-ddVV").parse("...") 将其转换为 Instant,它会在抱怨 time 为空的地方抛出。
这是理所当然的,但是,我想从中获得 Instant,即 epochMillis,所以我可以将 long 序列化到数据库中。
有办法解决吗?基本上我想将"2020-01-12+01:00" 扩展到"2020-01-12T00:00.000+01:00" 并像往常一样将其解析为 Instant
【问题讨论】:
-
你总是想要午夜的瞬间,在指定的时间偏移?
-
你的模式可以简单地是
DateTimeFormatter.ISO_DATE吗? -
@DawoodsaysreinstateMonica 是的
-
@LairdNelson 我试过了,但不管出于什么原因它给了我
zone=null;但如果我使用自己的模式,它会起作用,我做错了吗? -
我认为答案是
DateTimeFormatter.ofPattern("yyyy-MM-ddVV").parse("...", Instant::from),但我目前无法对此进行测试。
标签: java java-time date-parsing jsr310 java.time.instant