Aller au contenu
TextArray
Tout en local

Convertisseur XML en JSON

Convertissez XML en JSON équivalent, avec des attributs préfixés et des balises répétées sous forme de tableaux.

Entrée
Sortie

Convertisseur XML en JSON

XML et JSON décrivent tous deux des données structurées, mais les outils qui vous entourent parlent rarement les deux. Une ancienne API SOAP, un flux RSS, une mise en page Android, un fichier de configuration ou un export de données vous remettent du XML ; votre script, votre base de données ou votre frontend veut du JSON. Cet outil convertit entre eux avec un véritable analyseur (et non un hack de regex) qui gère correctement les parties délicates de XML : les éléments imbriqués, les attributs, le contenu mixte, les balises à fermeture automatique, les commentaires, les sections CDATA, la déclaration XML et DOCTYPE.

Le mappage suit la convention largement utilisée. Les attributs d'un élément deviennent des clés préfixées par @ (configurable), donc <user id="7"> donne "@id": "7". Les éléments enfants s'emboîtent en tant qu'objets ; lorsqu'une balise se répète (trois éléments <item> d'affilée), elle se réduit en un seul tableau, ce qui est exactement ce que vous souhaitez pour les listes. Un élément qui ne contient que du texte devient une simple chaîne ; celui qui a à la fois du texte et des attributs conserve son texte sous une clé #text. Les entités comme & et les références numériques comme A sont décodées et le contenu CDATA est pris littéralement.

Parce qu'il s'agit d'un véritable analyseur de descente récursive, il valide au fur et à mesure qu'il lit : une balise de fermeture incompatible, un commentaire non terminé ou un contenu parasite après la racine produit une erreur claire avec le numéro de ligne, plutôt que de modifier silencieusement la sortie. Choisissez une indentation de deux ou quatre espaces pour un résultat lisible, ou réduisez-la en une seule ligne pour l'intégration.

Tout s'exécute localement dans votre navigateur : vos données ne quittent jamais votre appareil, ce qui est important pour les exportations XML qui contiennent souvent des enregistrements et des identifiants.

FAQ

Comment les attributs XML sont-ils représentés dans le JSON ?
Comme clés préfixées par @ par défaut (vous pouvez modifier le préfixe). Ainsi <book lang="en"> devient { "book": { "@lang": "en" } }. Il s'agit de la convention utilisée par les bibliothèques comme xml-js et badgerfish, de sorte que la sortie est intégrée à la plupart des chaînes d'outils.
Que se passe-t-il en cas de balises répétées ?
Ils deviennent un tableau. Trois enfants <item> se transforment en "item": [ … ], ce dont une liste a besoin. Une balise qui apparaît une fois reste une valeur unique - notez que cela signifie un document avec un élément et un autre avec plusieurs cartes vers différentes formes, ce qui est inhérent à XML → JSON.
Gère-t-il le contenu mixte et CDATA ?
Oui. Un élément avec à la fois du texte et des enfants (ou attributs) conserve son texte sous une clé #text. Les sections CDATA sont prises littéralement, donc leur balisage <raw> et leurs caractères & survivent sans être analysés. Les commentaires et les instructions de traitement sont ignorés.
Pourquoi a-t-il signalé une erreur au lieu de convertir ?
Il s'agit d'un analyseur de validation : une balise de fermeture incompatible, un attribut non cité, un commentaire ou un contenu non terminé après l'élément racine arrêtent tous la conversion avec un message numéroté par ligne. C’est délibéré : une conversion erronée mais discrète est pire qu’une erreur manifeste.
Mon XML est-il téléchargé quelque part ?
Non. L'analyse et la conversion s'exécutent entièrement dans votre navigateur et vos données ne quittent jamais votre appareil.