使用存储历史对象时区信息的系统,如下所示:
o1: dt= 2022-07-15 13:32:00 offset=5 dst=false
o2: dt= 2022-01-15 13:32:00 offset=5 dst=true
o3: dt= 2022-07-15 13:32:00 offset=7 dst=false
如果它能存储像"美国/纽约"这样的IANA时区,生活会轻松得多,但这就是我必须处理的问题.我的最终目标是将这些历史日期与当前时间进行比较,并获得它们之间的时差.
创建当前时间很容易.我可以在UTC获得它
ZonedDateTime.now(ZoneId.of("UTC"))
2022-07-15T15:33:04.177Z[UTC]
或者我的本地时区
ZonedDateTime.now()
2022-07-15T11:33:28.648-04:00[America/New_York]
问题是,我如何将表格数据读入ZonedDateTime
进行苹果对苹果的比较.比如一些神奇的方法,比如
ZonedDateTime.fromOffset(5).fromDst(false).asTz('UTC')