Maison  >  Article  >  développement back-end  >  Comment analyser correctement les chaînes horaires dans Go avec les fuseaux horaires ?

Comment analyser correctement les chaînes horaires dans Go avec les fuseaux horaires ?

DDD
DDDoriginal
2024-11-23 05:43:16326parcourir

How to Correctly Parse Time Strings in Go with Time Zones?

Comprendre le comportement de time.Parse dans Go

Dans Go, la méthode time.Parse est utilisée pour convertir des chaînes en valeurs time.Time. Cependant, des problèmes de conversion de fuseau horaire peuvent survenir, entraînant des résultats inattendus.

Pour résoudre ces problèmes, il est crucial de définir une chaîne de format correcte. L'erreur renvoyée par time.Parse doit être gérée pour obtenir des informations sur le processus de conversion.

Chaîne de format corrigée

La chaîne de format fournie dans l'exemple de code, "2013 -05-13 18:41:34.848 -0700 PDT", est incorrect. Pour respecter la syntaxe de formatage de l'heure Go, le format correct doit être :

const longForm = "2006-01-02 15:04:05 -0700"

Exemple de code avec gestion des erreurs

En gérant l'erreur renvoyée par time.Parse , nous pouvons identifier toute conversion problèmes :

package main

import (
    "fmt"
    "log"
    "time"
)

func main() {
    const longForm = "2006-01-02 15:04:05 -0700"
    t, err := time.Parse(longForm, "2013-05-13 18:41:34.848 -0700")
    if err != nil {
        log.Fatal(err)
    }
    fmt.Println(t)
}

Sortie

Avec la chaîne de format corrigée et la gestion appropriée des erreurs, la sortie sera :

2013-05-13 01:41:34.848 +0000 UTC

Cette sortie reflète avec précision l'heure UTC, en tenant compte du fuseau horaire spécifié dans la chaîne de format. En comprenant le comportement de time.Parse et en suivant la syntaxe appropriée, les développeurs peuvent convertir efficacement les chaînes en valeurs temporelles dans Go.

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