Pob canllaw

Trosi stamp amser Unix yn ddyddiad a dyddiad yn stamp amser

Cyhoeddwyd · Diweddarwyd 2 munud o ddarllen

Mae stamp amser Unix yn cyfrif yr amser a aeth heibio ers hanner nos 1 Ionawr 1970 mewn amser cyffredinol. Mae dau gwestiwn yn penderfynu’r dyddiad canlyniadol: uned y rhif a’r parth amser y darllenwch y canlyniad ynddo.

Gwerth cyfeirio

Mae Trosi stamp amser Unix yn rhoi tri darlleniad o’r un eiliad. Ar gyfer 1700000000, gyda phorwr wedi’i osod i amser Paris:

DarlleniadCanlyniad
Dyddiad UTCTue, 14 Nov 2023 22:13:20 GMT
Dyddiad lleol14 Tachwedd 2023 am 23:13:20 UTC+1
ISO2023-11-14T22:13:20.000Z

Mae’r amser lleol yn dilyn parth amser y porwr: awr yn ychwanegol ym Mharis yn y gaeaf. Mae’r un stamp amser yn un eiliad, wedi’i ddarllen mewn dau barth amser.

Adnabyddir yr uned yn ôl nifer y digidau

Mae’r gosodiad rhagosodedig yn adnabod yr uned o hyd y rhif. Mae’r tri gwerth isod yn dynodi’r un foment, hyd at y manylder.

RhifDigidauUned a adnabuwydMoment a gafwyd
170000000010Eiliadau14 Tach 2023, 22:13:20 UTC
170000000000013Milieiliadau14 Tach 2023, 22:13:20 UTC
170000000012345616Microeiliadau14 Tach 2023, 22:13:20.123 UTC

Y rheol: hyd at 11 digid, eiliadau; o 12 i 14, milieiliadau; 15 ac 16, microeiliadau. Mae’r gosodiad «milieiliadau» yn gorfodi’r uned honno.

Magl y rheol

Gan fod yr uned yn cael ei thynnu o’r hyd, darllenir gwerth amwys mewn un ffordd: mae 10000000000 (11 digid) yn rhoi 20 Tachwedd 2286, ac mae 100000000000 (12 digid) yn rhoi 3 Mawrth 1973. Mae gan stamp amser mewn milieiliadau cyn Mawrth 1973 11 digid neu lai, a byddai’n cael ei ddarllen fel eiliadau: gorfodwch felly’r gosodiad «milieiliadau».

Gwerthoedd cyn 1970 a therfyn 2038

Mae rhif negyddol yn dynodi moment cyn 1970: mae −1 yn rhoi 31 Rhagfyr 1969 am 23:59:59 UTC, ac mae 0 yn rhoi 1 Ionawr 1970 am hanner nos.

Y rhif 2147483647 yw’r mwyaf y gall cyfanrif 32 did â llofnod ei ddal: mae’n rhoi 19 Ionawr 2038 am 03:14:07 UTC. Mae’r rhif nesaf, 2147483648, yn rhoi 03:14:08: mae’r teclyn yn parhau heb derfyn, ond ni all system sy’n storio amser mewn 32 did.

Trosi dyddiad yn stamp amser

Rhowch ddyddiad yn lle rhif: mae’r teclyn yn rhoi’r stamp amser mewn eiliadau ac mewn milieiliadau.

MewnbwnStamp amser mewn eiliadauDarlleniad
2026-01-011767225600Hanner nos mewn amser cyffredinol, dim parth amser a roddwyd
2026-01-01T10:30:00+01:00176725980010:30 ym Mharis, hynny yw 09:30 mewn amser cyffredinol
2024-02-291709164800Blwyddyn naid wedi’i derbyn

Darllenir dyddiad heb barth amser mewn amser cyffredinol, nid amser lleol: mae’r teclyn yn dweud hynny yn y canlyniad. Gwrthodir dyddiad nad yw’n bodoli, fel 30 Chwefror 2026, gyda neges.

Camgymeriadau cyffredin

  • Darllen milieiliadau fel eiliadau: mae’r dyddiad yn disgyn filoedd o flynyddoedd yn rhy bell.
  • Anghofio’r parth amser: mae dyddiad a ddarllenwyd fel un lleol yna’i anfon fel un cyffredinol yn symud awr neu fwy.
  • Ysgrifennu dyddiad heb barth amser gan feddwl am amser lleol, pan gaiff ei ddarllen mewn UTC.

I gyfrif y diwrnodau rhwng dau ddyddiad, gweler Cyfrif y diwrnodau rhwng dau ddyddiad.

Gwirio trosiad

  1. Ailddarllenwch y llinell UTC, nad yw’n dibynnu ar y ddyfais.
  2. Gwiriwch yr uned a gyhoeddir ar linell gyntaf y canlyniad.
  3. Trowch y dyddiad canlyniadol yn ôl: dylech gael y rhif cychwynnol yn ôl.

Trosi stamp amser Unix