Tous les guides

Mettre en forme et valider du JSON

Rendez le JSON plus lisible, vérifiez sa syntaxe ou créez une version compacte. Ce guide explique l'indentation, le tri des clés et l'enregistrement du résultat.

Essayer le fichier fourni

Téléchargez order-options.json, une commande fictive de deux articles dont les noms de champs sont en anglais. L'objet customer regroupe un nom et une ville ; le tableau items contient CARD-02 puis BOX-01. L'exemple comprend du texte entre guillemets, des quantités et des prix numériques, le booléen true et null pour une note de livraison vide. Les champs sont volontairement non triés pour montrer l'effet de l'option de tri.

Étape par étape

  1. Ouvrez Formateur et validateur JSON. Utilisez Fichier pour ouvrir le fichier order-options.json fourni, ou collez son contenu dans Vos valeurs.
  2. Réglez Indentation sur 2 pour utiliser deux espaces par niveau. Laissez l'option Trier les clés des objets désactivée pour le premier traitement.
  3. Sélectionnez Traiter les données. L'outil vérifie la syntaxe JSON avant d'afficher un résultat. En cas d'erreur, utilisez la ligne et la colonne pour localiser le problème, corrigez la saisie et réessayez.
  4. Lisez le résultat. L'objet customer et les deux articles devraient être faciles à suivre, avec un champ ou un élément de liste par ligne. Les champs gardent l'ordre de l'exemple lorsque le tri est désactivé.
  5. Sélectionnez Télécharger le résultat pour enregistrer formatted.json. Vous pouvez aussi utiliser Copier le texte pour transférer le résultat dans un autre éditeur.
  6. Ouvrez le fichier téléchargé dans un éditeur de texte et comparez-le à l'exemple à l'aide des vérifications ci-dessous. Essayez ensuite les autres réglages d'indentation et de tri, en sélectionnant Traiter les données après chaque modification.

Exemples avant et après

Ces exemples courts présentent l'objet customer de order-options.json sous forme d'un petit document JSON. Comparez le même nom et la même ville avant et après chaque réglage. La section facultative de références à la fin montre la commande complète.

Rendre le JSON compact plus lisible

Réglez Indentation sur 2, laissez l'option Trier les clés des objets désactivée et sélectionnez Traiter les données. Le résultat ajoute des sauts de ligne et deux espaces par niveau tout en gardant l'ordre d'origine des champs.

Avant : saisie compacte

{"customer":{"name":"Zoë","city":"Bergen"}}

Après : indentation de deux espaces

{
  "customer": {
    "name": "Zoë",
    "city": "Bergen"
  }
}

Trier les clés d'un objet

Gardez Indentation sur 2, activez Trier les clés des objets et sélectionnez Traiter les données. Dans customer, city précède maintenant name. Les deux valeurs restent identiques.

Avant : ordre d'origine des clés

{
  "customer": {
    "name": "Zoë",
    "city": "Bergen"
  }
}

Après : clés de l'objet triées

{
  "customer": {
    "city": "Bergen",
    "name": "Zoë"
  }
}

Compacter le JSON

Choisissez Minifier dans Indentation, laissez l'option Trier les clés des objets désactivée et sélectionnez Traiter les données. Les espaces de mise en forme et les sauts de ligne disparaissent ; le texte et l'ordre des champs restent identiques.

Avant : indentation de deux espaces

{
  "customer": {
    "name": "Zoë",
    "city": "Bergen"
  }
}

Après : Minifier

{"customer":{"name":"Zoë","city":"Bergen"}}

Choisir l'indentation

ChoixEffet
2Utilise deux espaces par niveau d'imbrication. C'est le réglage du parcours principal.
4Utilise quatre espaces par niveau d'imbrication pour mieux faire ressortir les objets et tableaux imbriqués.
↹Utilise une tabulation par niveau d'imbrication. Sa largeur affichée dépend de votre éditeur de texte.
MinifierSupprime les espaces de mise en forme et les sauts de ligne. Les espaces à l'intérieur du texte entre guillemets font toujours partie de ce texte. Choisissez cette option pour un résultat compact, puis sélectionnez Traiter les données.

Modifier la saisie ou une option efface le résultat précédent. Sélectionnez Traiter les données à nouveau pour générer un résultat avec les nouveaux réglages. L'outil relit la zone de saisie à chaque fois ; il n'y replace pas automatiquement le résultat précédent.

Trier les clés des objets

Laissez l'option Trier les clés des objets désactivée pour garder l'ordre d'origine des champs de chaque objet. Activée, elle trie les clés dans un ordre textuel sensible à la casse dans tout le document, y compris les objets à l'intérieur des tableaux. Les éléments des tableaux gardent leur ordre d'origine.

  1. Gardez Indentation sur 2, activez Trier les clés des objets et sélectionnez Traiter les données.
  2. Les clés du premier niveau sont maintenant customer, deliveryNote, items, order et paid. Dans customer, city précède name. Dans chaque article, price précède quantity et sku.
  3. Le tableau items contient toujours CARD-02 puis BOX-01. Trier les clés ne trie pas les articles selon sku ou price.

Copier, télécharger et recommencer

ChoixEffet
Copier le texteCopie le résultat actuel sous forme de texte. Si la copie est indisponible, l'outil sélectionne le résultat pour vous permettre de le copier manuellement.
Télécharger le résultatEnregistre le résultat actuel sous le nom formatted.json. Ce nom est utilisé pour les résultats mis en forme, compactés et triés ; renommez donc les fichiers si vous souhaitez conserver plusieurs versions.
Imprimer les résultatsOuvre la boîte de dialogue d'impression du navigateur pour le texte du résultat.
Charger un exempleRemplace la saisie par l'exemple intégré à l'outil et le traite avec les réglages actuels. Cet exemple est différent de order-options.json utilisé dans ce guide.
Tout supprimerEfface la saisie, le fichier sélectionné et le résultat. Les choix d'indentation et de tri sont conservés.

Vérifier le JSON téléchargé

  • Ouvrez formatted.json dans un éditeur de texte. Vérifiez que la commande est ORD-1042, que le client est Zoë à Bergen et qu'il y a deux articles.
  • Vérifiez les valeurs et leurs types : quantity est le nombre 2 puis 1, les prix gardent 19.50 et 5.00, paid est le booléen true sans guillemets et deliveryNote est la valeur null sans guillemets. Les noms et codes d'articles entre guillemets restent des chaînes de caractères.
  • Après avoir essayé Trier les clés des objets, vérifiez l'ordre des champs indiqué plus haut et que CARD-02 précède toujours BOX-01 dans le tableau items.
  • Essayez Minifier puis Traiter les données. Collez le résultat dans Vos valeurs, réglez Indentation sur 2 et sélectionnez Traiter les données à nouveau. Comparez les valeurs et l'ordre des articles à l'exemple d'origine ; les choix de mise en forme doivent les conserver.

Questions et dépannage

Pourquoi le JSON est-il signalé comme invalide ?

Vérifiez la ligne et la colonne indiquées ainsi que le champ juste avant cette position. Les clés et le texte nécessitent des guillemets doubles ; les champs nécessitent des virgules et des deux-points ; les crochets et accolades doivent être fermés. Corrigez la saisie et sélectionnez Traiter les données à nouveau. La validation vérifie la syntaxe JSON : un résultat valide peut encore manquer de champs exigés par votre application.

Puis-je utiliser des commentaires ou une virgule finale ?

Supprimez les commentaires et toute virgule juste avant un crochet ou une accolade de fermeture. Ils ne sont pas valides en JSON. L'outil de mise en forme exige une saisie valide et ne la répare pas automatiquement.

Que signifie l'avertissement sur les clés répétées ?

Le message « Les clés répétées ont été conservées. Certains lecteurs ignorent les clés répétées. » signifie qu'une clé apparaît plusieurs fois dans le même objet. L'outil garde ces entrées et vous avertit. Examinez la source, choisissez la valeur voulue et supprimez l'entrée supplémentaire ; une autre application peut n'en garder qu'une.

Pourquoi mon fichier ne s'ouvre-t-il pas ou n'est-il pas traité ?

La limite de saisie est de 2 MiB, soit 2 097 152 octets. Les fichiers texte locaux doivent être en UTF-8. Si l'outil signale des données trop complexes, réduisez l'imbrication ou le nombre d'entrées. Divisez une grande saisie en documents JSON complets plus petits plutôt que de couper au milieu d'un objet ou d'un tableau.

Pourquoi les nombres longs changent-ils dans une autre application ?

L'exemple de précision distinct ci-dessous contient 9007199254740993 et 0.10000000000000001. Cet outil garde exactement le texte des nombres avec tous les réglages d'indentation et de tri. Mettez en forme exact-numbers.json et comparez le résultat à exact-numbers-formatted.json dans un éditeur de texte. Une application qui importe le résultat peut toujours arrondir les nombres ; vérifiez qu'elle prend en charge la précision requise. Un code commençant par zéro, comme 00123, doit être une chaîne entre guillemets en JSON.

La mise en forme peut-elle restaurer des chiffres déjà arrondis ?

La mise en forme ne peut pas restaurer des chiffres arrondis ou supprimés avant que le texte arrive dans l'outil. Revenez à la source d'origine et exportez à nouveau la valeur complète. Lorsqu'une valeur est un identifiant plutôt qu'une quantité, une chaîne peut aider les applications destinataires à conserver ses chiffres.

Facultatif : comparer l'exemple et les résultats de référence

Ces exemples de code et fichiers à télécharger ont été produits à partir de order-options.json avec le même outil de mise en forme que sur la page de l'outil. Les références mise en forme et compacte ont le tri des clés désactivé ; la référence triée utilise une indentation de deux espaces avec le tri activé.

Exemple d'origine

{"order":"ORD-1042", "customer": {"name":"Zoë","city":"Bergen"}, "items":[{"sku":"CARD-02", "quantity":2,"price":19.50},{"sku":"BOX-01","quantity":1, "price":5.00}], "paid":true, "deliveryNote":null}

Deux espaces ; ordre d'origine des clés

{
  "order": "ORD-1042",
  "customer": {
    "name": "Zoë",
    "city": "Bergen"
  },
  "items": [
    {
      "sku": "CARD-02",
      "quantity": 2,
      "price": 19.50
    },
    {
      "sku": "BOX-01",
      "quantity": 1,
      "price": 5.00
    }
  ],
  "paid": true,
  "deliveryNote": null
}

Minifier ; ordre d'origine des clés

{"order":"ORD-1042","customer":{"name":"Zoë","city":"Bergen"},"items":[{"sku":"CARD-02","quantity":2,"price":19.50},{"sku":"BOX-01","quantity":1,"price":5.00}],"paid":true,"deliveryNote":null}

Deux espaces ; clés des objets triées

{
  "customer": {
    "city": "Bergen",
    "name": "Zoë"
  },
  "deliveryNote": null,
  "items": [
    {
      "price": 19.50,
      "quantity": 2,
      "sku": "CARD-02"
    },
    {
      "price": 5.00,
      "quantity": 1,
      "sku": "BOX-01"
    }
  ],
  "order": "ORD-1042",
  "paid": true
}
Fichier de référenceRéglagesOctets
order-formatted.jsonDeux espaces ; ordre d'origine des clés300
order-minified.jsonMinifier ; ordre d'origine des clés193
order-sorted.jsonDeux espaces ; clés des objets triées300

Il s'agit de véritables résultats textuels, pas de captures de l'interface. Le code peut revenir à la ligne selon la largeur de l'écran. Les noms des fichiers de référence distinguent les exemples ; l'outil télécharge toutes les versions sous le nom formatted.json.

Outils associés

Sources

RFC 8259 · JSON