2011-01-02 12 views
18

Sto imparando la programmazione e scelgo Ruby come prima lingua da apprendere.Data di analisi come 1240915075

sto parsing XML in cui sono date in questa forma: 1240915075 1224855068

Come si chiama questo formato? Come usare quel valore in un oggetto Data o Ora?

Grazie!

risposta

37

Questa è l'ora UNIX (a volte chiamata Epoch time). Esso misura il numero di secondi trascorsi dal 1 ° gennaio 1970 (L'epoca Unix è l'ora UTC 00:00:00 il 1 ° gennaio 1970)

Ecco un convertitore esempio: http://www.esqsoft.com/javascript_examples/date-to-epoch.htm

Una domanda StackOverflow per quanto riguarda la conversione intero tempo con rubino: Ruby/Rails: convert int to time OR get time from integer?

utilizzare la funzione Time.at per convertire ad esempio:

t = Time.at(i) 
+0

Nitpick: io chiamerei 1 Gennaio 1970 volta epoca. Questo è chiamato timestamp unix. – marcog

+0

buon punto - aggiornato per precisione. Ho avuto l'abitudine di chiamarlo EPOCH tempo ... –

3

Questo è un timestamp Unix - il numero di secondi dal 1 gennaio 1970.

Un esempio di come usarlo in Ruby è qui:

t = Time.at(1215163257) 
puts t.to_date 
>> 2008-07-04 
+1

Dovresti includere una copia del codice nella tua risposta. Quel collegamento potrebbe cambiare/morire in futuro. – marcog

+0

Ho aggiornato la risposta per portare il codice in linea. –

7

Questo è Epoch Time (il primo corrisponde a mar 28 aprile 2009 11:37:55 GMT + 0100).

È possibile ottenere un datetime fuori di esso, utilizzando Time.at, in questo modo:

Time.at(1240915075) 
+0

Grazie, ha funzionato! – Mario

Problemi correlati