Convertir XML en CSV
Transformez un flux, une exportation de produits ou un fichier RSS en tableau de feuille de calcul. L’élément d’enregistrement répété est détecté pour vous, sans XPath.
Déposez vos fichiers ici
.xml, .rss, .xhtml, .txt · jusqu’à 300 Mo
Plus de réglagesMoins de réglages
Comment convertir en CSV
- 1
Déposez votre fichier XML
Glissez-déposez un fichier .xml ou .rss sur la page. Il est d’abord validé, ainsi une balise de fermeture manquante est signalée avec sa ligne et sa colonne, au lieu de produire un tableau incomplet.
- 2
Confirmez l’élément d’enregistrement
L’élément répété est détecté et affiché avec le nombre d’enregistrements qu’il contient, par exemple rss.channel.item avec quarante. Choisissez un autre candidat si ce n’est pas le niveau souhaité.
- 3
Convertissez et téléchargez le CSV
Cliquez sur le bouton, puis enregistrez le tableau.
XML n’a pas de lignes, elles sont donc déduites
Un arbre ne dit pas quel niveau correspond à un enregistrement. Le document est parcouru jusqu’à une profondeur de six, en comptant combien de frères et sœurs de même nom se trouvent à chaque chemin. Le groupe le plus grand est choisi, avec la préférence pour les chemins plus profonds en cas d’égalité, car rss.channel.item est plus utile que rss.channel. Jusqu’à cinq candidats sont proposés avec leur nombre d’enregistrements.
Attributs, imbrication et enfants répétés
Un attribut devient sa propre colonne précédée de @, ainsi id sur un produit ne se confond pas avec un élément enfant du même nom. Les éléments enfants sont convertis en colonnes nommées avec des points jusqu’à la profondeur que vous autorisez, et tout ce qui est plus profond est écrit dans une seule cellule au format JSON. Les enfants répétés peuvent être joints, numérotés ou conservés tels quels en JSON.
Espaces de noms et documents hostiles
Les préfixes d’espaces de noms sont supprimés par défaut, ainsi dc:title devient une simple colonne title et un flux mélangeant trois vocabulaires produit tout de même des en-têtes lisibles. Les documents qui déclarent des entités personnalisées dans leur DOCTYPE sont refusés avant l’analyse plutôt qu’étendus, car ce type de fichier fige un onglet du navigateur.
Aucun envoi pour effectuer la conversion
Le validateur, l’analyseur XML et le générateur de CSV sont du JavaScript exécuté dans cet onglet de navigateur. Aucune partie de votre document n’est envoyée à un serveur, stockée ou journalisée, et l’outil continue de fonctionner même si le réseau est coupé. Fermez l’onglet et il ne reste rien du fichier.
Questions fréquentes
Comment l’outil choisit-il quel élément est un enregistrement ?
Il compte les répétitions. Chaque chemin jusqu’à la profondeur six est examiné pour trouver des éléments frères de même nom, et le chemin qui en a le plus devient l’enregistrement. En cas d’égalité, le chemin le plus profond est choisi. Les autres options restent visibles avec leurs comptes, et vous pouvez aussi saisir un chemin vous-même pour un document inhabituel.
Où finissent les attributs XML ?
Chaque attribut devient une colonne dont le nom commence par @, ainsi un attribut id devient @id et reste distinct d’un élément enfant id. Si votre export contient des attributs dont vous n’avez pas besoin, passez le réglage des attributs sur « ignorer » pour les supprimer tous et obtenir un tableau plus étroit.
Que devient un élément imbriqué dans un enregistrement ?
Il est converti en colonne nommée avec des points, comme price.currency, jusqu’à la limite de profondeur que vous définissez. Au-delà de cette limite, tout le sous-arbre est écrit dans une seule cellule au format JSON. Les données restent disponibles sans créer des milliers de colonnes presque vides.
Pourquoi le CSV commence-t-il par un indicateur d’ordre d’octets ?
Pour qu’Excel reconnaisse le fichier comme UTF-8 lors d’un double-clic, au lieu de deviner une ancienne page de codes et d’abîmer les accents ou le texte cyrillique. Si le fichier est destiné à un script ou à un chargeur de base de données qui n’accepte pas cet indicateur, un simple réglage permet de passer en UTF-8 sans marque.
Excel affiche tout dans une seule colonne. Que s’est-il passé ?
Le fichier est correct. Excel découpe selon le séparateur défini par les paramètres régionaux de votre système, qui est le point-virgule dans une grande partie de l’Europe. Convertissez de nouveau en choisissant le point-virgule, ou utilisez Données puis Convertir dans le menu Texte en colonnes sur le fichier existant.
Cet outil fonctionne-t-il avec un flux RSS ou Atom ?
Oui, c’est le cas le plus simple. La détection tombe sur rss.channel.item ou sur l’élément entry équivalent, chaque item devient une ligne, et les extensions avec espace de noms comme Dublin Core ou les balises media arrivent comme colonnes ordinaires une fois les préfixes supprimés.
Pourquoi une apostrophe apparaît-elle avant une valeur commençant par un signe égal ?
Parce qu’une feuille de calcul traiterait sinon cette valeur comme une formule, et une valeur issue d’un flux non fiable peut être construite pour exécuter une commande à l’ouverture du fichier. Une apostrophe au début la neutralise. Les nombres négatifs simples comme -5 restent inchangés.
Mon fichier a un DOCTYPE et il a été refusé. Pourquoi ?
Un DOCTYPE qui déclare des entités est volontairement refusé. Des définitions d’entités imbriquées peuvent s’étendre en gigaoctets de texte et bloquer l’onglet, et des entités externes peuvent tenter d’accéder à d’autres fichiers. Supprimez les déclarations d’entités du DOCTYPE et le document se convertira normalement.