Maison >développement back-end >Golang >Comment puis-je calculer et formater la différence entre deux objets Go « time.Time » ?
Calcul des différences de temps avec le temps. Objets temporels
Dans la programmation avec Go, la représentation de points dans le temps est cruciale. Le type time.Time fournit des fonctionnalités permettant de manipuler les valeurs liées au temps. Une tâche courante consiste à calculer la différence entre deux points temporels.
Pour obtenir la différence horaire entre deux objets time.Time, vous pouvez utiliser la méthode time.Sub(). Le résultat est représenté sous la forme d'une valeur time.Duration.
time.Duration se formate de manière à s'adapter au décalage horaire. Par exemple :
package main import ( "fmt" "time" ) func main() { t1 := time.Now() t2 := t1.Add(time.Second * 341) fmt.Println(t1) fmt.Println(t2) diff := t2.Sub(t1) fmt.Println(diff) }
Sortie :
2009-11-10 23:00:00 +0000 UTC 2009-11-10 23:05:41 +0000 UTC 5m41s
Si vous désirez l'heure au format HH:mm:ss, vous pouvez créer une valeur time.Time et utiliser son heure. Méthode Format() :
out := time.Time{}.Add(diff) fmt.Println(out.Format("15:04:05"))
Sortie :
00:05:41
Cette approche convient aux décalages horaires sous 24 heures. Cependant, si le temps s'étend sur plusieurs jours ou plus, envisagez d'utiliser une solution qui s'adapte à des décalages horaires plus importants, comme la fonction fournie dans la question suivante :
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!