将 TAI 时间转换为 Java Instant

问题描述 投票:0回答:2

我可以访问以秒和纳秒为单位的 TAI 时间 - 让我称之为

T

我现在想创建一个与这个值对应的java

Instant
T

我已经寻找合适的构造函数来执行此操作,但没有成功。

java time constructor java-time tai-time
2个回答
5
投票

我建议查看或使用 ThreeTen-Extra 库中显式处理 TAI 和 UTC 的代码。这是 Javadoc

TaiInstant tai = TaiInstant.ofTaiSeconds(taiSecs, taiNanos);
Instant instant = tai.toInstant();

第二种方法应用UTC-SLS转换。


-2
投票

如果您可以单独访问时间元素,您可以执行以下操作:

long millisecondsTime = 1262347200000l;
long nanoseconds = 10202;
Instant taiInstance = Instant.ofEpochMilli(millisecondsTime);
taiInstance = taiInstance.plus(Duration.ofNanos(nanoseconds));
© www.soinside.com 2019 - 2024. All rights reserved.