Documentation développeur
Go
Mis à jour le 19 septembre 2026

Formater du JSON en Go

Mettez en forme du JSON avec une indentation prévisible tout en validant la syntaxe en Go.

Le formatage JSON consiste à analyser un document JSON valide puis à le sérialiser avec des espaces et une indentation plus lisibles. L’analyse permet aussi de détecter une syntaxe invalide.

Démarrage rapide#

L’exemple suivant utilise l’API standard de Go ou une bibliothèque couramment utilisée pour cette tâche.

Exemple#

Go
1package main23import (4    "bytes"5    "fmt"6)78func main() {9    var out bytes.Buffer10    if err := json.Indent(&out, []byte(input), "", "  "); err != nil {11        panic(err)12    }13    fmt.Println(out.String())14}

Opérations courantes#

Ce second exemple couvre une opération fréquente en production ou une manière plus sûre de traiter des entrées réelles.

Variante courante#

Go
1var pretty bytes.Buffer2if err := json.Indent(&pretty, raw, "", "  "); err != nil {3    return err4}56var compact bytes.Buffer7if err := json.Compact(&compact, raw); err != nil {8    return err9}

Points importants#

Le formatage doit passer par un parseur JSON. Évitez les transformations par expressions régulières et faites attention aux très grands nombres selon le runtime.

Bonnes pratiques#

  1. Considérez toute entrée externe comme non fiable et gérez explicitement les erreurs d’analyse ou de validation.
  2. Rendez explicites l’encodage, les unités, les formats et les conventions propres aux bibliothèques aux frontières du système.
  3. Ajoutez des tests couvrant l’entrée vide, le texte Unicode, les entrées invalides et des données représentatives de la production.

Références#

Implémenter JSON Formatter dans d'autres langages :