【问题标题】:converting Joda time Instant to Java time Instant将 Joda 时间 Instant 转换为 Java 时间 Instant
【发布时间】:2016-11-26 16:57:29
【问题描述】:

我有一个 Instant (org.joda.time.Instant) 实例,我在一些 api 响应中得到了它。我有另一个来自 (java.time.Instant) 的实例,它是从其他调用中获得的。现在,我想比较这两个对象以检查哪一个得到最新的。怎么可能?

【问题讨论】:

  • 为了比较,您可以从每个中获取毫秒

标签: java time jodatime java-time java.time.instant


【解决方案1】:

您可以从 joda Instant 转换为 java 的(日期时间和格式只是一个示例):

org.joda.time.Instant.parse("10.02.2017 13:45:32", DateTimeFormat.forPattern("dd.MM.yyyy HH:mm:ss")).toDate().toInstant()

因此,您在 joda Instant 上致电 toDate()toInstant()

【讨论】:

  • parse 的调用使这个答案令人困惑,但实际上调用toDate 返回一个java.util.Date,可用于获取即时...
  • 因此括号:(日期时间和格式只是一个例子)
【解决方案2】:

来自 joda.time 的getMillis() 可以与来自 java.time 的toEpochMilli() 进行比较。

类文档:

示例代码。

java.time.Instant myJavaInstant = 
    java.time.Instant.ofEpochMilli( myJodaInstant.getMillis() ) ;

走另一条路。

// Caution: Loss of data if the java.time.Instant has microsecond
// or nanosecond fraction of second.
org.joda.time.Instant myJodaInstant = 
    new org.joda.time.Instant( myJavaInstant.toEpochMilli() ); 

【讨论】:

    猜你喜欢
    • 2023-03-22
    • 1970-01-01
    • 1970-01-01
    • 2021-12-14
    • 1970-01-01
    • 2020-10-17
    • 1970-01-01
    • 1970-01-01
    • 2021-06-02
    相关资源
    最近更新 更多