-1

自 epoc 以来,我有一个 unix 时间,以毫秒为单位,例如:1505913038295

我需要把它分成两件事。所以我可以使用 Java Instant 类方法。

Instant ofEpochSecond(long epochSecond, long nanoAdjustment) 
  1. 纪元以来的秒数(我能做到) long secondsSince1970 = milisecondsSince1970 / 1000;

  2. 这个我需要帮助。我需要取毫秒的余数,比如 295,(第一个问题:我如何得到余数)然后将其转换为纳秒,然后获取当前的 System.nanoTime() 并将其添加到纳米拉曼德。

2017 年 9 月 20 日星期三 13:21:33 + [nano + nono 中的剩余 mili] [自 epoc 以来的秒数] + [nano + nono 中自 epoc 以来的毫秒数]

然后希望我可以调用 Instant.ofEpochSecond,类似这样。

Instant convertedTimestamp = Instant.ofEpochSecond(secondsSince1970, remaindingNanoTime % 1000000000L);

我希望这是有道理的。

4

1 回答 1

0

如果我正确理解您想要什么,请尝试以下操作:

Instant.ofEpochMilli( millis ).plusNanos( System.nanoTi‌​‌​me() % 1000_000L);
于 2017-09-25T07:36:04.083 回答