Epoch laiko konverteris

Konvertuokite Unix laiko žymas į UTC datas arba paverskite datą į epoch sekundes.

Pasirinkite, ar konvertuoti laiko žymą į datą, ar datą į laiko žymą.
Įveskite Unix laiko žymą sekundėmis.

Konvertuota reikšmė

2024-03-09T16:00:00.000Z

UTC reikšmė2024-03-09T16:00:00.000Z
Unix milisekundės1 710 000 000 000
Savaitės dienašeštadienis

Kaip naudotis šiuo „Epoch“ laiko keitikliu

  1. Pasirinkite konvertavimo režimą

    Lauke „Konvertavimo režimas“ pasirinkite „Epoch į datą“ arba „Data į epoch“.

  2. Konvertuojant „Epoch“ į datą

    Į lauką „Epoch laiko žyma (sekundėmis)“ įveskite „Unix“ laiko žymą sekundėmis.

  3. Konvertuojant datą į „Epoch“

    Pasirinkite datą kalendoriuje, tada pagal poreikį nustatykite valandą (UTC), minutę (UTC) ir sekundę (UTC).

  4. Peržiūrėkite rezultatą

    Skaičiuoklė rodo UTC reikšmę, Unix milisekundes ir savaitės dieną.

Metodika

Kaip veikia šis epoch laiko konverteris

Šis epoch laiko konverteris konvertuoja Unix laiko žymas į žmonėms suprantamas UTC datas ir atvirkščiai. Unix laikas — dar vadinamas POSIX laiku arba epoch laiku — skaičiuoja sekundes, praėjusias nuo Unix epoch pradžios, kuri apibrėžiama kaip 1970 m. sausio 1 d. vidurnaktis UTC (1970-01-01T00:00:00Z). Šis vieno sveikojo skaičiaus formatas yra de-facto standartas saugant ir perduodant laiko žymas duomenų bazėse, API, žurnalo failuose, JWT žetonuose ir beveik visose šiuolaikinėse programavimo kalbose. Konverteris veikia abiem kryptimis: įvedus skaitinę laiko žymą, pateikiama atitinkama UTC data, savaitės diena ir milisekundžių atitikmuo, o įvedus kalendoriaus datą ir laiką, pateikiama epoch reikšmė sekundėmis ir milisekundėmis.

Formulė
Unix laikas = sekundės, praėjusios nuo 1970-01-01T00:00:00Z
epoch Atskaitos taškas: 1970 m. sausio 1 d. vidurnaktis UTC (Unix laiko žyma 0)
Unix laikas (s) Bendras sveikųjų sekundžių skaičius nuo epochos pradžios iki nurodytos datos ir laiko
Unix laikas (ms) Unix laikas sekundėmis, padaugintas iš 1 000 – naudojamas JavaScript Date, Java System.currentTimeMillis() ir daugelyje API
UTC data Grigaliaus kalendoriaus data ir 24 valandų laikas, atitinkantis nurodytą laiko žymą
savaitės diena Savaitės dienos pavadinimas, gautas iš konvertuotos UTC datos
Pavyzdys

Norėdami konvertuoti Unix laiko žymą 1 700 000 000 į datą: pradedant nuo 1970-01-01 00:00:00 UTC, pridėkite 1 700 000 000 sekundžių. Tai lygu 19 675 dienoms, 17 valandų, 46 minutėms ir 40 sekundžių. Gauta UTC data yra 2023-11-14 22:13:20 UTC, kuri yra antradienis. Atitikmuo milisekundėmis yra 1 700 000 000 000. Ir atvirkščiai, įvedus 2023 m. lapkričio 14 d. 22:13:20 UTC, gaunama tiksli epochos vertė 1 700 000 000.

Laiko žyma 0 konvertuojama į 1970-01-01 00:00:00 UTC (ketvirtadienį). Milisekundžių atitikmuo yra 0.

Laiko žyma 1 704 000 000 konvertuojama į 2023-12-31 12:00:00 UTC (sekmadienį). Įvedus šią datą ir laiką režimu „Data į epochą“, gaunama 1 704 000 000.

Prielaidos
  • Visi skaičiavimai atliekami UTC laiku. Vietinio laiko konvertavimui po konvertavimo reikia pritaikyti atitinkamą laiko juostos poslinkį.
  • Keliamosios sekundės neskaičiuojamos. Kaip ir POSIX, šis keitiklis kiekvieną dieną laiko lygiai 86 400 sekundžių, o tai atitinka daugumos programavimo kalbų ir operacinių sistemų veikimą.
  • Neigiamos laiko žymos nurodo datas prieš epochos pradžią (1970 m. sausio 1 d.). Pavyzdžiui, −86400 atitinka 1969 m. gruodžio 31 d.
  • Milisekundžių laiko žymas prieš įvedant reikėtų padalyti iš 1 000; keitiklis priima sekundes kaip įvestį ir rezultatuose rodo milisekundžių atitikmenį.
Pastabos
  • JavaScript „Date.now()“ ir Java „System.currentTimeMillis()“ grąžina milisekundes, o ne sekundes – prieš įvesdami vertę čia, padalykite ją iš 1 000 arba palyginimui naudokite milisekundžių išvestį.
  • 2038 metų problema turi įtakos 32 bitų pasirašytųjų sveikųjų skaičių laiko žymoms, kurios persipildys 2038 m. sausio 19 d. 03:14:07 UTC. Dauguma šiuolaikinių sistemų perėjo prie 64 bitų laiko žymų.
  • Derindami API atsakymus ar žurnalo failus, atkreipkite dėmesį į laiko žymas, kurios skiriasi lygiai 3 600 arba 7 200 sekundžių – tai paprastai rodo, kad kažkur procese buvo pritaikyta (arba praleista) laiko juostos poslinkio vertė.
  • Epochos laikas visada didėja monotoniškai (neatsižvelgiant į keliamųjų sekundžių koregavimus), todėl jis idealiai tinka įvykių rūšiavimui, trukmės skaičiavimui ir unikalių laiku pagrįstų identifikatorių generavimui.
Šaltiniai
  1. IEEE Std 1003.1 (POSIX) — sekundžių nuo epochos pradžios apibrėžimas
  2. Unix epochos kilmė — „The Unix Heritage Society“ ir „Bell Labs“ dokumentacija
  3. RFC 3339 — data ir laikas internete: laiko žymos

Kas yra Unix laiko žymos?

Unix laiko žyma yra sekundžių skaičius, praėjęs nuo 1970 m. sausio 1 d. vidurnakčio UTC – Unix epochos. Šis vienas sveikasis skaičius yra de facto standartas laikui atvaizduoti duomenų bazėse, API, žurnalo failuose ir daugumoje programavimo kalbų. Kadangi jis nepriklauso nuo laiko juostos ir nuosekliai didėja, jis supaprastina rūšiavimą, trukmės skaičiavimus ir laiko palyginimus. JavaScript Date.now() ir daugelis API grąžina milisekundes (1 000 × sekundžių), todėl prieš įvesdami milisekundžių reikšmę čia, padalykite ją iš 1 000. Neigiamos laiko žymos nurodo datas iki 1970 m.; pavyzdžiui, −86400 yra lygiai viena diena prieš epochą.

Epochos laiko naudojimo atvejai kūrėjams

Kūrėjai naudoja Unix laiko žymas saugodami įvykių laiką duomenų bazėse, serializuodami datas JSON API, generuodami laiku pagrįstus talpyklos raktus ir derindami žurnalo įrašus. Duomenų bazių stulpeliuose laiko žymos dažnai saugomos kaip sveikieji skaičiai efektyviam indeksavimui ir diapazono užklausoms. API atsakymai dažnai grąžina epochos sekundes arba milisekundes, kad būtų išvengta laiko juostų dviprasmiškumo. Derinimo metu konvertuojant neapdorotą laiko žymą iš žurnalo ar JWT teiginio į žmogui skaitomą datą, greitai paaiškėja, ar reikšmė teisinga, ar skiriasi dėl laiko juostos faktoriaus. Epochos laikas taip pat naudojamas užklausų ribojimui, sesijos galiojimo pabaigai ir rūšiuojamų unikalių identifikatorių generavimui paskirstytose sistemose.

Epochos laiko keitiklio DUK

Kas yra Unix epocha?

Unix epocha yra atskaitos taškas, nuo kurio matuojamas Unix laikas: 1970 m. sausio 1 d. vidurnaktis UTC (1970-01-01T00:00:00Z). Laiko žyma 0 atitinka būtent tą momentą.

Kodėl mano JavaScript laiko žyma turi daugiau skaitmenų?

„JavaScript“ funkcija „Date.now()“ grąžina milisekundes nuo epochos pradžios, o ne sekundes. Padalykite iš 1 000, kad konvertuotumėte į sekundėmis pagrįstą formatą, naudojamą šiame įrankyje, arba lyginkite tiesiogiai su milisekundžių rezultatu.

Ar galiu įvesti neigiamą laiko žymą?

Taip. Neigiamos reikšmės nurodo datas prieš epochą. Pavyzdžiui, −86400 atitinka 1969-12-31T00:00:00Z, t. y. lygiai vieną dieną prieš epochą.

Ar šis įrankis atsižvelgia į keliamąsias sekundes?

Ne, ir tai atitinka POSIX standartą. POSIX laikas daro prielaidą, kad kiekviena diena turi lygiai 86 400 sekundžių. 27 keliamosios sekundės, įterptos nuo 1972 m., nėra atskirai atvaizduojamos, o tai reiškia, kad UTC ir „Unix“ laikas ties keliamųjų sekundžių riba gali skirtis iki vienos sekundės.

Kas yra 2038 metų problema?

Sistemos, saugančios „Unix“ laiką kaip 32 bitų pasirašytąjį sveikąjį skaičių, persipildys 2038 m. sausio 19 d. 03:14:07 UTC. Reikšmė taps dideliu neigiamu skaičiumi, rodančiu 1901 m. datas. Dauguma šiuolaikinių platformų dabar naudoja 64 bitų laiko žymas, kurios nepersipildys daugiau nei 290 milijardų metų.

Autorius Jan Křenek Įkūrėjas ir pagrindinis programuotojas
Peržiūrėjo DigitSum metodikos peržiūra Formulių patikra ir kokybės užtikrinimas
Paskutinį kartą atnaujinta 2026-03-10

Naudokite tai kaip sąmatą, o svarbius sprendimus derinkite su kvalifikuotu specialistu.

Įvesti duomenys lieka naršyklėje, nebent būsima funkcija aiškiai nurodys kitaip.