Comment analyser les horodatages Unix
L'analyse des horodatages Unix dans Go peut sembler une tâche simple, mais elle peut entraîner des erreurs inattendues. Lorsque vous tentez d'analyser un horodatage à l'aide de time.Parse, vous pouvez rencontrer une erreur hors de portée même si la mise en page semble correcte.
La raison en est que time.Parse ne gère pas les horodatages Unix. Au lieu de cela, vous devez utiliser la fonction strconv.ParseInt pour convertir la chaîne d'horodatage en int64, puis utiliser la fonction time.Unix pour créer un objet time.Time.
Voici un exemple :
package main import ( "fmt" "time" "strconv" ) func main() { i, err := strconv.ParseInt("1405544146", 10, 64) if err != nil { panic(err) } tm := time.Unix(i, 0) fmt.Println(tm) }
Ce code affichera l'horodatage correct :
2014-07-16 20:55:46 +0000 UTC
Important Remarque :
Dans l'exemple d'origine, strconv.Atoi a été utilisé à la place de strconv.ParseInt. Cependant, strconv.Atoi peut entraîner des débordements d'entiers sur les systèmes 32 bits. Par conséquent, strconv.ParseInt est recommandé pour gérer tous les cas en toute sécurité.
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!