Documentation développeur
C#
Mis à jour le 19 septembre 2026

Convertir XML vers JSON en C#

Analysez du XML et convertissez-le en JSON selon une convention de correspondance explicite en C#.

XML peut représenter des attributs, du texte mixte, des espaces de noms, des éléments répétés et un ordre que JSON ne représente pas directement. Choisissez une bibliothèque et une convention stable, puis testez-les avec de vrais documents.

Démarrage rapide#

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

Exemple#

C#
1// dotnet add package Newtonsoft.Json2using Newtonsoft.Json;3using System.Xml;45var doc = new XmlDocument();6doc.LoadXml(xml);7string json = JsonConvert.SerializeXmlNode(doc, Formatting.Indented);8Console.WriteLine(json);

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#

C#
1XmlElement root = doc.DocumentElement2    ?? throw new InvalidDataException("XML document has no root element");34string json = JsonConvert.SerializeXmlNode(root, Formatting.None, omitRootObject: false);

Points importants#

Définissez comment représenter attributs, texte, espaces de noms et éléments répétés, et sécurisez l’analyse des documents XML non fiables.

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 XML → JSON dans d'autres langages :