# JSON Formatter et validateur

> Formatez, validez et minifiez du JSON en ligne. Erreurs par ligne et colonne, correction des virgules finales et guillemets simples, grands nombres intacts.

URL: https://acrafto.com/fr/formateur-validateur-json/  
Updated: 2026-10-03

Tools are interactive browser apps; there is no public API, no endpoints to call and no server-side processing. To use a tool, open its HTML page in a browser.

Collez n’importe quel JSON dans le champ ci-dessus et ce JSON formatter et validateur le vérifie pendant la saisie. Une entrée valide est indentée selon votre choix ou minifiée sur une seule ligne. Une entrée invalide reçoit un message d’erreur précis avec la ligne et la colonne, un extrait mis en évidence et, pour les erreurs courantes, une correction en un clic. Tout s’exécute dans votre navigateur : les réponses d’API, les fichiers de configuration et les exports ne quittent jamais votre ordinateur.

## Ce que fait ce JSON formatter

- **Formater le JSON** (beautify) avec 2 espaces, 4 espaces ou des tabulations. Le résultat conserve l’ordre d’origine des clés, sauf si vous cochez *Trier les clés*.
- **Minifier le JSON** en supprimant tous les espaces et sauts de ligne. L’indicateur de taille sous le résultat montre combien d’octets vous avez gagnés.
- **Valider le JSON** en direct selon la [RFC 8259](https://datatracker.ietf.org/doc/html/rfc8259), la norme JSON actuelle. La ligne d’état passe au vert dès que le document est correct.
- **Corriger les erreurs courantes** automatiquement : virgules finales, guillemets simples, clés sans guillemets, commentaires, littéraux de style Python `True`, `None` et `NaN`, nombres comme `.5` ou `+1`.
- **Charger des fichiers** avec le bouton Ouvrir un fichier ou en déposant un fichier `.json` sur le champ de saisie, puis télécharger le résultat ou le renvoyer dans l’entrée pour un nouveau passage.

## Pourquoi le message d’erreur compte plus que la couleur rouge

La plupart des validateurs en ligne se contentent de signaler qu’il y a un problème. Les navigateurs ne font guère mieux : `JSON.parse` dans Chrome indique `Unexpected token } in JSON at position 148`, Firefox affiche `expected property name or '}'`, et aucun des deux ne dit quelle ligne regarder. Cet outil possède son propre analyseur syntaxique, qui retient où commence chaque élément. Lorsqu’il s’arrête, vous obtenez la ligne et la colonne, un extrait de cette ligne avec un repère `^` sous le caractère fautif et une explication en langage clair, par exemple *Il manque probablement une virgule entre deux propriétés*. Le bouton *Aller à l’erreur* place le curseur directement à cette position dans le champ de saisie.

Les erreurs les plus fréquentes que nous voyons dans les documents collés :

| Entrée | Problème | JSON correct |
| --- | --- | --- |
| `{'name': 'Ada'}` | guillemets simples | `{"name": "Ada"}` |
| `{name: "Ada"}` | clé sans guillemets | `{"name": "Ada"}` |
| `[1, 2, 3,]` | virgule finale | `[1, 2, 3]` |
| `{"a": 1 "b": 2}` | virgule manquante | `{"a": 1, "b": 2}` |
| `{"ok": True}` | littéral Python | `{"ok": true}` |
| `{"x": 007}` | zéro initial | `{"x": 7}` ou `{"x": "007"}` |
| `// comment` | commentaire | interdit en JSON |

Le bouton *Corriger pour moi* répare la plupart de ces erreurs. La correction est volontairement prudente : elle ne devine jamais où placer une virgule manquante, car une virgule insérée au mauvais endroit change le sens des données. Dans ce cas, vous obtenez la position exacte à la place.

## Grands nombres, ordre des clés et autres pièges habituels

De nombreux formateurs appellent `JSON.parse` puis `JSON.stringify`. Cet aller-retour abîme les données sans prévenir. Un identifiant Twitter ou Snowflake comme `1234567890123456789` dépasse la limite de 2^53 des nombres JavaScript et revient sous la forme `1234567890123456800`. La valeur `1.0` devient `1`, et `1e3` devient `1000`. Ce formateur ne convertit jamais les nombres en virgule flottante. Il recopie chaque littéral exactement tel qu’il a été écrit, si bien que le résultat est une remise en forme fidèle de l’entrée, pas une réinterprétation. Il en va de même pour les séquences d’échappement dans les chaînes : `"\u00e9"` reste `"\u00e9"` et n’est pas transformé en `"é"`.

L’ordre des clés est lui aussi conservé. La spécification JSON indique que les membres d’un objet ne sont pas ordonnés, mais les fichiers de configuration, les jeux de données de test et les revues de code se lisent bien mieux quand l’ordre reste stable. Si vous préférez une forme canonique, par exemple pour comparer deux réponses d’API dans un outil de diff, activez *Trier les clés* : les deux documents listeront leurs propriétés par ordre alphabétique à chaque niveau d’imbrication.

## Formater JSON ou minifier JSON : lequel choisir

Le JSON indenté est fait pour les humains. Utilisez-le pour relire une réponse d’API, écrire un `package.json`, un `tsconfig.json` ou un document OpenAPI, ou pour stocker des jeux de données de test dans un dépôt où chaque diff doit montrer une modification par ligne. Deux espaces sont la convention dans l’univers JavaScript, quatre espaces sont courants dans les projets Python et .NET, et les tabulations laissent chaque lecteur choisir sa propre largeur.

Le JSON minifié est fait pour les machines. Les espaces représentent généralement 20 à 40 % d’un document formaté. Les supprimer réduit les données envoyées aux navigateurs, les valeurs stockées dans Redis ou dans une colonne de base de données, et les attributs `data-*` intégrés au HTML. La compression gzip comble une partie de l’écart, mais la version minifiée reste plus petite une fois compressée. L’indicateur de taille sous le résultat affiche la différence exacte pour votre document.

## Travailler avec JSON dans le terminal et les éditeurs

Pour des fichiers que vous traitez régulièrement, un outil en ligne de commande est plus rapide que n’importe quel site web. `jq . file.json` formate, `jq -c . file.json` minifie, et `python -m json.tool file.json` fonctionne partout où Python est installé. Visual Studio Code formate le JSON avec Maj+Alt+F et le valide selon un schéma lorsque vous ajoutez une propriété `$schema`. Cette page sert pour les autres cas : une réponse copiée depuis l’onglet Réseau, une ligne de log, un extrait de configuration trouvé sur un wiki, ou une vérification rapide sur une machine où vous ne pouvez rien installer.

Outils associés sur ce site : l’[encodeur et décodeur Base64](https://acrafto.com/fr/encodeur-decodeur-base64/) décode la partie données (payload) d’un JWT, qui est du JSON encodé en Base64url. Le [convertisseur de timestamp Unix](https://acrafto.com/fr/convertisseur-timestamp-unix/) transforme les nombres `createdAt` présents dans la plupart des réponses d’API en dates lisibles, et le [décodeur UUID](https://acrafto.com/fr/decodeur-validateur-uuid/) indique la version et l’horodatage des identifiants de vos données. D’autres utilitaires sont réunis dans les [outils pour développeurs](https://acrafto.com/fr/developpeurs/).

## Questions fréquentes

### Mon JSON est-il envoyé à un serveur ?

Non. L'analyse, la mise en forme et la correction s'exécutent entièrement dans votre navigateur, en JavaScript. Une fois la page chargée, vous pouvez couper le réseau et l'outil continue de fonctionner. Rien n'est journalisé ni stocké.

### Pourquoi le validateur refuse-t-il les commentaires alors que mon éditeur les accepte ?

Les commentaires ont été retirés de JSON volontairement par son auteur, Douglas Crockford, pour éviter que le format serve à transmettre des directives à l'analyseur. Des fichiers comme `tsconfig.json` ou `.vscode/settings.json` sont techniquement du JSONC, une extension du format que les éditeurs prennent en charge. Les analyseurs stricts des API, des bases de données et de la plupart des langages de programmation les rejettent. Le bouton de correction supprime les commentaires pour que le résultat soit valide partout.

### Puis-je formater du JSON Lines ou plusieurs objets à la fois ?

Un document JSON contient exactement une valeur. Si vous collez plusieurs objets séparés par des virgules ou des sauts de ligne, le validateur s'arrête à la première valeur en trop. Entourez-les de crochets pour en faire un tableau, puis formatez. Le bouton de correction ne le fait pas automatiquement, car il ne peut pas savoir si l'entrée devait former un seul document.

### Quelle est la taille maximale ?

Il n'y a pas de limite fixe. Un document de quelques mégaoctets se formate en bien moins d'une seconde sur un ordinateur portable. La coloration syntaxique est désactivée au-delà d'environ 400 ko pour que la page reste réactive, mais la copie et le téléchargement fonctionnent toujours.

### Trier les clés modifie-t-il les données ?

Non. Les objets JSON ne sont pas ordonnés par définition, voir l'[article JSON sur Wikipédia](https://fr.wikipedia.org/wiki/JavaScript_Object_Notation), donc un analyseur lit le document trié et l'original comme la même valeur. Les tableaux ne sont jamais réordonnés, car leur ordre fait partie des données.

### Comment échapper du JSON pour l'intégrer dans une chaîne ?

Minifiez d'abord, puis échappez chaque barre oblique inverse et chaque guillemet double. Beaucoup de langages le font directement : `JSON.stringify(JSON.stringify(obj))` en JavaScript ou `json.dumps(json.dumps(obj))` en Python produisent une chaîne JSON qui contient le texte JSON.

## Other languages

- Čeština (cs): [JSON formatter a validátor](https://acrafto.com/cs/json-formatter-validator/) ([Markdown](https://acrafto.com/cs/json-formatter-validator/index.md))
- Slovenčina (sk): [JSON formatter a validátor](https://acrafto.com/sk/json-formatter-validator-online/) ([Markdown](https://acrafto.com/sk/json-formatter-validator-online/index.md))
- English (en): [JSON Formatter and Validator](https://acrafto.com/en/json-formatter-validator/) ([Markdown](https://acrafto.com/en/json-formatter-validator/index.md))
- Deutsch (de): [JSON Formatter & Validator](https://acrafto.com/de/json-formatter-validator/) ([Markdown](https://acrafto.com/de/json-formatter-validator/index.md))
- Español (es): [Formateador y validador JSON](https://acrafto.com/es/formateador-validador-json/) ([Markdown](https://acrafto.com/es/formateador-validador-json/index.md))
- Italiano (it): [JSON formatter e validatore](https://acrafto.com/it/json-formatter-validatore-online/) ([Markdown](https://acrafto.com/it/json-formatter-validatore-online/index.md))
- Português (pt): [Formatador e validador JSON](https://acrafto.com/pt/formatador-validador-json/) ([Markdown](https://acrafto.com/pt/formatador-validador-json/index.md))
- Nederlands (nl): [JSON formatter & validator](https://acrafto.com/nl/json-formatter-validator/) ([Markdown](https://acrafto.com/nl/json-formatter-validator/index.md))
- Polski (pl): [JSON Formatter i walidator](https://acrafto.com/pl/json-formatter-i-walidator/) ([Markdown](https://acrafto.com/pl/json-formatter-i-walidator/index.md))
- Română (ro): [JSON formatter și validator](https://acrafto.com/ro/json-formatter-validator/) ([Markdown](https://acrafto.com/ro/json-formatter-validator/index.md))
- Magyar (hu): [JSON formatter és validátor](https://acrafto.com/hu/json-formatter-validator/) ([Markdown](https://acrafto.com/hu/json-formatter-validator/index.md))
- Ελληνικά (el): [JSON formatter και validator](https://acrafto.com/el/json-formatter-validator/) ([Markdown](https://acrafto.com/el/json-formatter-validator/index.md))
- Български (bg): [JSON formatter и валидатор](https://acrafto.com/bg/json-formatter-validator/) ([Markdown](https://acrafto.com/bg/json-formatter-validator/index.md))
- Hrvatski (hr): [JSON formatter i validator](https://acrafto.com/hr/json-formatter-validator-online/) ([Markdown](https://acrafto.com/hr/json-formatter-validator-online/index.md))
- Slovenščina (sl): [JSON formatter in validator](https://acrafto.com/sl/json-formatter-validator/) ([Markdown](https://acrafto.com/sl/json-formatter-validator/index.md))
- Eesti (et): [JSON formatter ja validaator](https://acrafto.com/et/json-formatter-validaator/) ([Markdown](https://acrafto.com/et/json-formatter-validaator/index.md))
- Latviešu (lv): [JSON formatter un validētājs](https://acrafto.com/lv/json-formatter-validetajs/) ([Markdown](https://acrafto.com/lv/json-formatter-validetajs/index.md))
- Lietuvių (lt): [JSON Formatter ir validatorius](https://acrafto.com/lt/json-formatter-validatorius/) ([Markdown](https://acrafto.com/lt/json-formatter-validatorius/index.md))
- Svenska (sv): [JSON formatter och validator](https://acrafto.com/sv/json-formatter-validator/) ([Markdown](https://acrafto.com/sv/json-formatter-validator/index.md))
- Dansk (da): [JSON formatter og validator](https://acrafto.com/da/json-formatter-validator/) ([Markdown](https://acrafto.com/da/json-formatter-validator/index.md))
- Suomi (fi): [JSON formatter ja validaattori](https://acrafto.com/fi/json-formatter-validaattori/) ([Markdown](https://acrafto.com/fi/json-formatter-validaattori/index.md))
- Norsk (no): [JSON formatter og validator](https://acrafto.com/no/json-formatter-validator/) ([Markdown](https://acrafto.com/no/json-formatter-validator/index.md))
- Українська (uk): [JSON Formatter і валідатор](https://acrafto.com/uk/json-formatter-i-validator/) ([Markdown](https://acrafto.com/uk/json-formatter-i-validator/index.md))
- Русский (ru): [JSON formatter и валидатор](https://acrafto.com/ru/json-formatter-validator/) ([Markdown](https://acrafto.com/ru/json-formatter-validator/index.md))
- Српски (sr): [JSON formatter i validator](https://acrafto.com/sr/json-formatter-i-validator/) ([Markdown](https://acrafto.com/sr/json-formatter-i-validator/index.md))
- Македонски (mk): [JSON Formatter & Validator](https://acrafto.com/mk/json-formatter-validator/) ([Markdown](https://acrafto.com/mk/json-formatter-validator/index.md))
- Bosanski (bs): [JSON formatter i validator](https://acrafto.com/bs/json-formatter-validator/) ([Markdown](https://acrafto.com/bs/json-formatter-validator/index.md))
- Shqip (sq): [JSON Formatter dhe validues](https://acrafto.com/sq/json-formatter-validues/) ([Markdown](https://acrafto.com/sq/json-formatter-validues/index.md))
- Türkçe (tr): [JSON formatter ve doğrulayıcı](https://acrafto.com/tr/json-formatter-dogrulayici/) ([Markdown](https://acrafto.com/tr/json-formatter-dogrulayici/index.md))
- 日本語 (ja): [JSON整形ツール](https://acrafto.com/ja/json-formatter-validator/) ([Markdown](https://acrafto.com/ja/json-formatter-validator/index.md))
- 한국어 (ko): [JSON 정렬 및 검사기](https://acrafto.com/ko/json-formatter-validator/) ([Markdown](https://acrafto.com/ko/json-formatter-validator/index.md))
- العربية (ar): [تنسيق JSON والتحقق منه](https://acrafto.com/ar/json-formatter-validator/) ([Markdown](https://acrafto.com/ar/json-formatter-validator/index.md))
- हिन्दी (hi): [JSON Formatter और Validator](https://acrafto.com/hi/json-formatter-validator/) ([Markdown](https://acrafto.com/hi/json-formatter-validator/index.md))
- Bahasa Indonesia (id): [JSON formatter dan validator](https://acrafto.com/id/json-formatter-validator/) ([Markdown](https://acrafto.com/id/json-formatter-validator/index.md))
- Tiếng Việt (vi): [JSON Formatter và Validator](https://acrafto.com/vi/json-formatter-kiem-tra-json/) ([Markdown](https://acrafto.com/vi/json-formatter-kiem-tra-json/index.md))
- ไทย (th): [JSON Formatter & Validator](https://acrafto.com/th/json-formatter-validator/) ([Markdown](https://acrafto.com/th/json-formatter-validator/index.md))
- עברית (he): [JSON Formatter ובדיקת תקינות](https://acrafto.com/he/json-formatter-validator/) ([Markdown](https://acrafto.com/he/json-formatter-validator/index.md))
