Maison  >  Article  >  développement back-end  >  Comment convertir l'horodatage au format d'heure dans Golang

Comment convertir l'horodatage au format d'heure dans Golang

PHPz
PHPzoriginal
2023-04-24 14:46:247192parcourir

Golang est un langage de programmation fortement typé, particulièrement adapté à l'écriture de services réseau et d'applications à haute concurrence. Lors de l'écriture d'applications, vous devez souvent traiter des données temporelles, telles que des horodatages. Golang fournit des fonctions de conversion d'heure qui peuvent convertir les horodatages au format d'heure.

1. Horodatage

L'horodatage fait référence au nombre de millisecondes ou de secondes entre 0:00:00 le 1er janvier 1970 après JC (UTC) jusqu'à l'heure actuelle. Cette méthode de représentation du temps est largement utilisée en raison de sa relative fixité et de son standard mondial.

Dans Golang, les horodatages peuvent être divisés en deux types, l'un est l'horodatage Unix et l'autre est l'horodatage UnixNano.

L'horodatage Unix fait référence au nombre de secondes écoulées depuis le 1er janvier 1970, 0:00:00 (UTC). Dans Golang, vous pouvez utiliser la fonction time.Unix pour convertir l'horodatage Unix au format d'heure.

L'horodatage UnixNano fait référence au nombre de nanosecondes écoulées depuis le 1er janvier 1970, 0:00:00 (UTC). Dans Golang, vous pouvez utiliser la fonction time.UnixNano pour convertir les horodatages UnixNano au format d'heure.

2. Conversion de l'heure

Dans Golang, vous pouvez utiliser la fonction fournie par le package time pour convertir l'horodatage au format horaire. Les fonctions couramment utilisées sont les suivantes : La fonction

  1. time.Unix

time.Unix peut convertir l'horodatage Unix au format d'heure. Son paramètre t est l'horodatage Unix en secondes, et le paramètre nano est la partie nanoseconde.

Exemple d'utilisation :

package main

import (
    "fmt"
    "time"
)

func main() {
    timestamp := int64(1635593048) // Unix时间戳
    t := time.Unix(timestamp, 0)
    fmt.Println(t)
}

Résultat de sortie :

2021-10-30 22:30:48 +0800 CST
  1. time.UnixNano

time.La fonction UnixNano peut convertir l'horodatage UnixNano au format d'heure. Son paramètre t est l'horodatage UnixNano en nanosecondes.

Exemple d'utilisation :

package main

import (
    "fmt"
    "time"
)

func main() {
    timestamp := int64(1635593048644816891) // UnixNano时间戳
    t := time.Unix(0, timestamp)
    fmt.Println(t)
}

Résultat de sortie :

2021-10-30 22:30:48.644816891 +0800 CST
  1. time.Parse

La fonction time.Parse peut analyser une chaîne de temps dans un format d'heure. Sa disposition des paramètres est le format d’une chaîne temporelle. La valeur du paramètre est une chaîne temporelle.

Exemple d'utilisation :

package main

import (
    "fmt"
    "time"
)

func main() {
    t, _ := time.Parse("2006-01-02 15:04:05", "2021-10-30 22:30:48")
    fmt.Println(t.Unix())
}

Résultat de sortie :

1635593048
  1. time.Format

la fonction time.Format peut formater l'heure en une chaîne de temps. Sa disposition des paramètres est le format d’une chaîne temporelle.

Exemple d'utilisation :

package main

import (
    "fmt"
    "time"
)

func main() {
    t := time.Now()
    fmt.Println(t.Format("2006-01-02 15:04:05"))
}

Résultat de sortie :

2021-11-03 11:22:33

3. Résumé

L'horodatage est une méthode de représentation du temps couramment utilisée et peut représenter le temps absolu. Golang fournit une multitude de fonctions de traitement du temps, qui peuvent convertir les horodatages en formats temporels et effectuer des calculs de temps, des comparaisons, des formats et d'autres opérations. Dans les applications réelles, les développeurs peuvent utiliser les fonctions de traitement du temps de manière flexible en fonction des besoins afin d'améliorer l'efficacité du développement.

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!

Déclaration:
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