Potrzebuję uzyskać liczbę milisekund od 1970-01-01 UTC do teraz UTC w Javie.Jak uzyskać milisekundy z epoki (1970-01-01) w Javie?
Chciałbym również móc uzyskać liczbę milisekund od 1970-01-01 UTC do dowolnej innej daty czasu UTC.
Potrzebuję uzyskać liczbę milisekund od 1970-01-01 UTC do teraz UTC w Javie.Jak uzyskać milisekundy z epoki (1970-01-01) w Javie?
Chciałbym również móc uzyskać liczbę milisekund od 1970-01-01 UTC do dowolnej innej daty czasu UTC.
Co powiecie na System.currentTimeMillis()
?
Z JavaDoc:
Powroty:różnica, mierzony w milisekundach, między obecnym czasie i północy 1 stycznia 1970 UTC
Java 8 wprowadza ramy java.time
, w szczególności klasa Instant
, która "... modeluje ... punkt na linii czasu ...":
long now = Instant.now().toEpochMilli();
Powroty:liczba milisekund od epoki 1970-01-01T00: 00: 00Z - czyli prawie tak samo jak wyżej :-)
Cheers,
Ponieważ ta odpowiedź to rok 2012, a Java 8 nie było w pobliżu, jest dobra. Równie dobra jest odpowiedź java.time od Prezemek. To uwzględnia obecną architekturę Java 8 java.time. –
For Edification: Przetestowałem kilka sposobów, aby uzyskać czas UTC w milisekundach i znalazłem java.time.Instant.now(). DoEpochMilli, aby działał dobrze. Porównywałem to do opcji metody ZonedDateTime.now (ZoneOffset.UTC) (które widziałem w innych postach jako opcje) i zgodnie z oczekiwaniami podejście Java.time.Instant.now() było trochę szybsze na moim komputerze ... niskie jednocyfrowe milisekundy w trzydziestu następujących po sobie biegach. –
także spróbuj System.currentTimeMillis()
Używanie java.time
ramy wbudowany w Java 8 i późniejszych.
import java.time.Instant;
Instant.now().toEpochMilli(); //Long = 1450879900184
Instant.now().getEpochSecond(); //Long = 1450879900
Działa to w UTC ponieważ Instant.now()
jest naprawdę zadzwonić do Clock.systemUTC().instant()
https://docs.oracle.com/javase/8/docs/api/java/time/Instant.html
[Co pan próbował?] (Http://whathaveyoutried.com) – thegrinner
nie wykazuje żadnego wysiłku badawczego . – jlordo
@PaulG - Numer jeden powód downwój to * wysiłek badawczy *. Pytanie rozwiązuje prosty Google. –