JSON vers XML
Collez un document JSON et obtenez l’équivalent XML avec le nom de l’élément racine que vous choisissez, une stratégie cohérente pour les tableaux (éléments répétés ou un wrapper), une déclaration XML optionnelle et une indentation soignée. Utile lorsqu’un système hérité exige XML et que vos données en amont sont au format JSON.
Comment convertir JSON en XML
-
1
Collez JSON
Objet ou tableau au niveau supérieur. Vous donnerez un nom à l'élément racine.
-
2
Nommez la racine
XML nécessite un seul élément racine. Par défaut, c'est `<root>` ; donnez-lui un nom significatif comme `<users>` ou `<response>`.
-
3
Choisissez la stratégie de tableau
"Éléments répétés" (chaque élément du tableau devient un frère `<item>`) ou "wrapper" (le tableau va à l'intérieur d'un élément wrapper nommé).
-
4
Copiez le XML
Déclaration XML optionnelle, indentation appropriée et valeurs échappées pour `<`, `>`, `&` et les guillemets.
Exemple : éléments répétés
Entrée:
{ "users": [ { "name": "Alice" }, { "name": "Bob" } ] }
Sortie:
<?xml version="1.0" encoding="UTF-8"?>
<root>
<users>
<name>Alice</name>
</users>
<users>
<name>Bob</name>
</users>
</root>
Exemple : wrapper de tableau
Même entrée avec la stratégie “envelopper les tableaux dans <item>” :
<root>
<users>
<item>
<name>Alice</name>
</item>
<item>
<name>Bob</name>
</item>
</users>
</root>
Mappage des types
| JSON | XML |
|---|---|
| chaîne | contenu texte, échappé en entités |
| entier / décimal | contenu texte (sans annotation de type XML) |
| booléen | true / false en tant que texte |
| null | élément vide (<foo/>) ou omis |
| tableau | éléments répétés ou wrapper + éléments |
| objet | élément imbriqué avec éléments enfants |
Attributs vs éléments
XML distingue les attributs (<user id="1">) des éléments enfants (<user><id>1</id></user>). Le convertisseur utilise par défaut des éléments, ils sont sans perte pour l’aller-retour (round-trip). Si votre XML en aval nécessite des attributs, utilisez une convention de préfixe de clé :
- La clé JSON
@iddevient un attribut XMLid="..."sur l’élément parent. - La clé JSON
#textdevient le contenu texte de l’élément parent.
Ces conventions proviennent des mappages BadgerFish et Parker, les deux normes les plus courantes de JSON à XML.
Règles d’échappement
<-><>->>&->&"->"(dans les valeurs d’attribut)'->'(optionnel)- Les octets en UTF-8 sont préservés, déclarés dans le prologue XML.
Erreurs courantes
- Tableau JSON au niveau racine. XML a besoin d’un seul élément racine. Le convertisseur enveloppe un tableau dans
<root>(ou quel que soit le nom que vous choisissez). - Clés numériques. JSON
{"1": "a"}est légal ; les noms d’éléments XML ne peuvent pas commencer par un chiffre. Le convertisseur préfixe les chiffres avec un underscore (_1) ou vous permet de définir un mappage personnalisé. - Tableaux mixtes.
[1, "deux", { "x": true }]n’a pas de mappage propre. Cela signifie généralement que le JSON nécessite une normalisation avant la conversion. - Documents énormes. XML est verbeux, un JSON de 10 Mo peut devenir un XML de 20-30 Mo. Envisagez une conversion en streaming pour des charges très volumineuses.
Questions fréquentes
XML nécessite une seule racine selon la spécification. Si votre JSON est un tableau ou a plusieurs clés de niveau supérieur, le convertisseur enveloppe tout dans un élément racine que vous pouvez nommer (par défaut <root>).
Oui. Utilisez la convention de préfixe @ dans vos clés JSON (par exemple "@id": 1) et ces clés deviennent des attributs. D’autres clés restent des éléments enfants. Cela correspond au mappage BadgerFish.
Deux stratégies : éléments frères répétés (chaque élément obtient la clé parent comme son étiquette), ou un wrapper avec des éléments <item> à l’intérieur. Choisissez celle qui correspond au schéma XML que vous ciblez.
Non. Le convertisseur émet la déclaration XML (<?xml version="1.0"?>) mais pas de DOCTYPE. Pour un XML qui nécessite une référence DTD ou XSD, ajoutez-la manuellement après la conversion.
Outils similaires
Référence de la table ASCII
Table ASCII complète de 0 à 127 avec décimal, hexadécimal, octal, binaire et référence numérique HTML pour chaque caractère, y compris les codes de contrôle comme NUL, LF et DEL.
Référence des caractères HTML
Liste consultable des entités HTML, de leurs codes nommés et numériques, et un copier-coller en un clic pour les caractères et symboles spéciaux.
Compteur de FPS
Mesurez les FPS du navigateur avec requestAnimationFrame : lissage, fréquence d'images min et max, seuil d'alerte et graphique facultatif. Tout se passe en local, sans envoi ni API.
Référence des raccourcis clavier
Recherchez les raccourcis par défaut documentés de VS Code, Chrome et Bash avec GNU Readline sous macOS, Windows et Linux.
Générateur de carte CSS
Créez le CSS d’un conteneur de carte : fond, bordure, rayon des angles, espacement intérieur et ombre douce, avec aperçu immédiat et code à copier-coller.
Formateur HTML
Mettez du HTML en forme localement dans le navigateur avec une indentation de deux ou quatre espaces. Aucun HTML n’est envoyé ni validé.
Outil disponible dans d’autres langues
- JSON ke XML [ID]
- JSONからXMLへ [JA]
- แปลง JSON เป็น XML [TH]
- Chuyển đổi từ JSON sang XML [VI]
- JSON zu XML [DE]
- JSON에서 XML로 [KO]
- JSON do XML [PL]
- JSON para XML [PT]
- JSON a XML [ES]
- JSON till XML [SV]
- JSON إلى XML [AR]
- JSON naar XML [NL]
- Преобразование JSON в XML [RU]
- JSON'ten XML'e [TR]
- JSON 到 XML [ZH]
- JSON to XML [EN]
- JSON in XML [IT]