2012-12-05 86 views
38

我需要從1970-01-01 UTC到現在的Java在Java中獲取毫秒數。如何在Java中從時代(1970-01-01)獲得毫秒數?

我還希望能夠從1970-01-01 UTC到任何其他UTC日期時間獲得毫秒數。

+3

[你嘗試過什麼?](http://whathaveyoutried.com) – thegrinner

+0

它不顯示任何研究工作。 – jlordo

+1

@PaulG - downvote的首要原因是*研究努力*。這個問題是由一個簡單的谷歌解決。 –

回答

96

System.currentTimeMillis()怎麼樣?

從JavaDoc的:

返回:的差,以毫秒爲單位,當前時間和午夜之間,1970年1月1日,UTC

爪哇8介紹java.time框架,特別是Instant類,其中「...在時間線上建模...點...」:

long now = Instant.now().toEpochMilli(); 

返回:自1970-01-01T00時代的毫秒數:00:00Z - 即幾乎與上面相同:-)

乾杯,

+2

由於這個答案是2012年和Java 8不在周圍,它是一個很好的。 Prezemek的java.time答案同樣好。這考慮了當前的Java 8 java.time框架。 –

+1

對於編輯:我測試了幾種方法來獲取以毫秒爲單位的UTC時間,並發現java.time.Instant.now()。toEpochMilli工作正常。我將它與ZonedDateTime.now(ZoneOffset.UTC)方法選項(我在其他文章中看到的選項)進行了比較,並且如預期的那樣,Java.time.Instant.now()方法在我的機器上更快一些。在連續三十次運行中低單位數毫秒。 –

10

而且嘗試System.currentTimeMillis()

相關問題