【问题标题】:Java 8: How to create a ZonedDateTime from an Epoch value?Java 8:如何从 Epoch 值创建 ZonedDateTime?
【发布时间】:2015-05-02 17:12:43
【问题描述】:

Java 8 的 LocalDateTime 有一个 ofEpochSecond 方法。不幸的是,ZonedDateTime 中没有这样的方法。现在,我有一个 Epoch 值和一个明确的 ZoneId 给出。我如何从中获得ZonedDateTime?

【问题讨论】:

    标签: java java-8 epoch zoneddatetime


    【解决方案1】:

    您应该可以通过Instant 类来执行此操作,它可以表示给定纪元时间的时刻。如果你有纪元秒,你可以通过类似的东西创建一些东西

    Instant i = Instant.ofEpochSecond(t);
    ZonedDateTime z = ZonedDateTime.ofInstant(i, zoneId);
    

    【讨论】:

    • ZonedDateTime.ofInstant(i, ZoneOffset.UTC) UTC
    • Instant instant = Instant.ofEpochSecond(t); ZoneId zoneId = ZoneId.of("America/New_York"); ZonedDateTime z = ZonedDateTime.ofInstant(instant, zoneId); 用于特定的 ZoneId。
    猜你喜欢
    • 1970-01-01
    • 2016-05-13
    • 2018-01-22
    • 1970-01-01
    • 2020-11-27
    • 2014-06-29
    • 2017-09-26
    • 2019-01-21
    • 2020-09-20
    相关资源
    最近更新 更多