Maison > développement back-end > Golang > Comment gérer les valeurs Null int64 lors de l'analyse de JSON dans Go ?

Comment gérer les valeurs Null int64 lors de l'analyse de JSON dans Go ?

Mary-Kate Olsen
Libérer: 2024-11-30 10:03:11
original
1070 Les gens l'ont consulté

How to Handle Null int64 Values When Parsing JSON in Go?

Analyse de JSON avec des valeurs nulles int64 dans Go

Lors de l'analyse de données JSON contenant des valeurs int64, il est possible de rencontrer des valeurs nulles. Par défaut, le package Go encoding/json tente de décomposer les valeurs nulles directement dans les champs int64, ce qui entraîne une erreur car il ne peut pas convertir null en int64.

Pour résoudre ce problème, envisagez d'utiliser des pointeurs au lieu de champs int64 directs. . Les pointeurs peuvent être nuls ou pointer vers un int64 avec une valeur associée. Voici un exemple :

import (
    "encoding/json"
    "fmt"
)

var d = []byte(`{ "world":[{"data": 2251799813685312}, {"data": null}]}`)

type jsonobj struct{ World []World }
type World struct{ Data *int64 }

func main() {
    var data jsonobj
    jerr := json.Unmarshal(d, &data)
    fmt.Println(jerr)
    if data.World[1].Data != nil {
        fmt.Println(*data.World[1].Data)
    }
}
Copier après la connexion

En utilisant un pointeur, le champ de données dans la structure World peut soit être nul si la valeur JSON est nulle, soit pointer vers une valeur int64 dans le cas contraire. Cela nous permet de gérer les valeurs nulles avec élégance et sans erreurs.

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