2012-06-19 23 views
7

System.currentTimeMillis() rappresenta l'ora UTC o l'ora locale del sistema?System.currentTimeMillis rappresenta l'ora UTC?

+0

ho pensato anche io .. ma dopo un po 'di lettura il javadocs ima bit confuso –

+2

@AlpeshPrajapati: è il sistema locale * orologio *, ma non nel fuso orario locale, che è quello che credo OP stava davvero chiedendo. –

+0

vedere http://www.velocityreviews.com/forums/t145337-system-currenttimemillis.html – Arcadien

risposta

14

UTC - è il numero di millisecondi dalla mezzanotte del 1 ° gennaio 1970 UTC (modulo saltare secondi, potenzialmente).

Ovviamente è affidamento sul sistema locale orologio, ma non dipende da locale sistema di fuso orario.

(E 'un peccato che il Javadoc non è più chiara su questo, è vero.)

+3

quindi, allo stesso tempo, 'System.currentTimeInMillis' sarebbe globalmente uguale (ovunque e in tutti i fusi orari) giusto? –

+4

@user: supponendo un orologio preciso su tutte le macchine, sì. –

+0

@Jon Skeet c'è un modo elegante per convertire 'System.currentTimeMillis' nel fuso orario corretto del dispositivo? –

Problemi correlati