2012-01-10 21 views
10

Potrzebuję zgłosić czas w sekundach od 1 stycznia 1900. Mam liczbę sekund od początku epoki Unix.Liczba sekund od 1 stycznia 1900 do rozpoczęcia epoki Unix

Czy ktoś może wskazać mi ostateczne odniesienie do liczby sekund między 1/1/1900 a 1/1/1970?

+0

Which kalendarzu? Zauważ, że 1 stycznia 1900 przypada na bardzo różne daty w kalendarze juliańskim i gregoriańskim. Jest to istotne, ponieważ oba były szeroko stosowane w tym czasie. Co to jest strefa czasowa? Epoka rozpoczyna się o godzinie 1970-01-01 00:00:00 ** UTC **. Poza tym (liczba dni w roku wolnym od skoku * liczba sekund w ciągu dnia * liczba lat nieskasujących) + (liczba dni w latach przestępnych * liczba sekund w ciągu dnia * liczba lat przestępnych) – Piskvor

+0

Dobre pytanie ... powiedzmy, gregoriański. – grifaton

Odpowiedz

23

Zgodnie z protokołem czas w RFC 868, to jest 2208988800L.

Czas

Czas to liczba sekund od północy (00:00) 1 stycznia 1900 GMT, tak że czas 1 00:00:01 dnia 1 stycznia 1900 GMT; to baza będzie służyć do roku 2036.

Na przykład:

po raz 2208988800 odpowiada 01 stycznia 1970 00:00 GMT,

  2,398,291,200 corresponds to 00:00 1 Jan 1976 GMT, 

     2,524,521,600 corresponds to 00:00 1 Jan 1980 GMT, 

     2,629,584,000 corresponds to 00:00 1 May 1983 GMT, 

    and -1,297,728,000 corresponds to 00:00 17 Nov 1858 GMT. 
+0

Tego właśnie szukam. Wielkie dzięki! – grifaton

+0

Po dodaniu wartości 2208988800 do sekund od wartości epoki * nix, otrzymuję sekundy od 01.01.1970 poprawnie. Dzięki – sdkks

6

70 lat = 2,208,988,800 sekund 1.01.1900 00:00 do 01: 01-1970 00:00

+0

Czy obejmuje to lata przestępne? – Piskvor

+1

Lata przestępne, tak, ale nie strefy czasowe, czas letni lub sekundy przestępne. –

+4

AFAIK, sekundy przestępne zostały ogłoszone dopiero od 1972 roku, więc nie musimy się o to martwić. – Piskvor

Powiązane problemy