Maison > développement back-end > Golang > Comment personnaliser le formatage de l'horodatage dans l'encodage JSON de Go ?

Comment personnaliser le formatage de l'horodatage dans l'encodage JSON de Go ?

Patricia Arquette
Libérer: 2024-12-19 05:51:36
original
134 Les gens l'ont consulté

How to Customize Timestamp Formatting in Go's JSON Encoding?

Formatage des horodatages pour l'encodage JSON

Lorsque vous travaillez avec Go, il peut être nécessaire de formater les horodatages générés par le type time.Time. Par défaut, JSON rassemble l'heure au format RFC3339, ce qui entraîne un format indésirable.

Personnalisation du formatage de l'horodatage

Pour personnaliser le formatage de l'horodatage, implémentez l'interface Marshaler pour votre type d'heure personnalisé. :

import (
    "encoding/json"
    "fmt"
)

type JSONTime time.Time

func (t JSONTime) MarshalJSON() ([]byte, error) {
    stamp := fmt.Sprintf("\"%s\"", time.Time(t).Format("Mon Jan _2"))
    return []byte(stamp), nil
}
Copier après la connexion

Appliquez ce type personnalisé à votre document struct:

type Document struct {
    Name        string
    Content     string
    Stamp       JSONTime
    Author      string
}
Copier après la connexion

Lors du marshaling, vous pouvez ensuite initialiser l'instance de document comme :

testDoc := model.Document{"Meeting Notes", "These are some notes", JSONTime(time.Now()), "Bacon"}
Copier après la connexion

Le JSON résultant aura désormais un horodatage formaté dans le format souhaité, tel que "Mai 15, 2014".

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