Maison > développement back-end > Golang > Comment convertir un horodatage Int96 de 12 octets en un horodatage GoLang ?

Comment convertir un horodatage Int96 de 12 octets en un horodatage GoLang ?

Susan Sarandon
Libérer: 2024-12-22 12:33:18
original
829 Les gens l'ont consulté

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

Conversion de l'horodatage Parquet Int96 en GoLang

Dans ce scénario, vous disposez d'un tableau d'horodatage int96 de 12 octets et souhaitez le convertir en horodatage dans GoLang.

En général, les horodatages int96 se composent d'une partie de 8 octets en nanosecondes et une partie de date de 4 octets stockée sous forme de numéro de jour julien. Cependant, dans ce cas, les 8 premiers octets sont en fait des nanosecondes, pas des millisecondes, et l'époque est minuit, pas l'époque Unix.

Pour illustrer le processus de conversion, considérons l'horodatage int96 suivant :

[128 76 69 116 64 7 0 0 48 131 37 0]
Copier après la connexion

Pour l'interpréter correctement :

  1. Inversez les 8 premiers octets pour obtenir la partie nanosecondes : 0x0000000029324BFD
  2. Convertissez-le en un entier : 45296 * 10^9 nanosecondes
  3. Convertissez le résultat en secondes : 45296 secondes
  4. Extrayez les composantes temporelles des secondes : 12 heures 34 minutes 56 secondes
  5. Inversez les 4 derniers octets pour obtenir le numéro du jour julien : 0x00256859
  6. Convertissez-le en un entier : 2451545
  7. Recherchez la date correspondante à l'aide d'un calendrier des jours juliens : 2000-01-01

Par conséquent, l'horodatage int96 [128 76 69 116 64 7 0 0 48 131 37 0] représente l'horodatage 2000-01-01 12:34:56 dans GoLang.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal