【发布时间】:2017-09-26 03:36:54
【问题描述】:
以欧洲芬兰赫尔辛基为例,夏令时结束于Sunday, 2017 October 29, 4:00 am。
我正在寻找一种方法来创建具有正确的 DST 设置(见下文)的 ZonedDateTime 实例,希望通过现有的工厂静态方法。
ZonedDateTime beforeDst = ZonedDateTime.of(2017, 10, 29, 3, 59, 0, 0, ZoneId.of("Europe/Helsinki"));
// this will print: 2017-10-29T03:59+03:00[Europe/Helsinki]
beforeDst.plusMinutes(1);
// this will print: 2017-10-29T03:00+02:00[Europe/Helsinki]
// note the +3 become +2, and 3:59 become 3:00
问题:我们如何创建将打印2017-10-29T03:00+02:00 的ZonedDateTime?
- 希望通过传入 LocalDateTime 作为参数或类似上述示例的参数,
- 没有加/删除日期操作,并且
- 字符串解析不是一个选项(没有
java.time.format.DateTimeFormatter)。
【问题讨论】:
标签: java java-8 dst zoneddatetime