Heim > Backend-Entwicklung > Golang > Wie konvertiere ich einen 12-Byte-Int96-Zeitstempel in einen GoLang-Zeitstempel?

Wie konvertiere ich einen 12-Byte-Int96-Zeitstempel in einen GoLang-Zeitstempel?

Susan Sarandon
Freigeben: 2024-12-22 12:33:18
Original
890 Leute haben es durchsucht

How to Convert a 12-Byte Int96 Timestamp to a GoLang Timestamp?

Parquet Int96-Zeitstempel in GoLang konvertieren

In diesem Szenario haben Sie ein 12-Byte-int96-Zeitstempel-Array und möchten es in einen Zeitstempel in GoLang konvertieren.

Normalerweise bestehen int96-Zeitstempel aus einem 8-Byte-Nanosekundenteil und ein 4-Byte-Datumsteil, der als julianische Tageszahl gespeichert wird. In diesem Fall sind die ersten 8 Bytes jedoch tatsächlich Nanosekunden und keine Millisekunden, und die Epoche ist Mitternacht, nicht die Unix-Epoche.

Um den Konvertierungsprozess zu veranschaulichen, betrachten wir den folgenden int96-Zeitstempel:

[128 76 69 116 64 7 0 0 48 131 37 0]
Nach dem Login kopieren

Um es richtig zu interpretieren:

  1. Kehren Sie die ersten 8 Bytes um Ermitteln Sie den Nanosekundenteil: 0x0000000029324BFD
  2. Konvertieren Sie ihn in eine Ganzzahl: 45296 * 10^9 Nanosekunden
  3. Konvertieren Sie das Ergebnis in Sekunden: 45296 Sekunden
  4. Extrahieren Sie die Zeitkomponenten aus Sekunden: 12 Stunden 34 Minuten 56 Sekunden
  5. Kehren Sie die letzten 4 Bytes um, um die julianische Tageszahl zu erhalten: 0x00256859
  6. Konvertieren Sie sie in eine Ganzzahl: 2451545
  7. Suchen Sie das entsprechende Datum mithilfe eines julianischen Tageskalenders: 2000-01-01

Daher ist die int96 timestamp [128 76 69 116 64 7 0 0 48 131 37 0] stellt den Zeitstempel 2000-01-01 12:34:56 in GoLang dar.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich einen 12-Byte-Int96-Zeitstempel in einen GoLang-Zeitstempel?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage