Aller au contenu

Convertir un fichier XML en CSV

Transformez les enregistrements répétés d’un fichier XML en lignes CSV, avec les attributs et les éléments imbriqués en colonnes. Le fichier est converti sur votre appareil.

Convertir en
Déposez un fichier XMLXML jusqu’à 100 Mo · JSON, CSV, XLSX, XLS, ODS jusqu’à 500 Mo
Choisir un fichierTraité sur votre appareil, jamais envoyé
Fonctionne dans votre navigateur · aucun envoiComment ça marche

Comment utiliser XML en CSV

  1. 1

    Déposez le fichier XML

    Un export, un flux ou un catalogue : tout fichier où le même élément se répète pour chaque enregistrement.

  2. 2

    Choisissez l’élément de ligne

    Le premier élément répété est sélectionné pour vous ; choisissez-en un plus profond dans la liste si vous voulez une ligne par ligne de commande plutôt qu’une par commande.

  3. 3

    Organisez les colonnes

    Conservez ou retirez les attributs, regroupez les enfants répétés dans une seule cellule ou numérotez-les, puis choisissez la virgule, le point-virgule ou la tabulation.

  4. 4

    Téléchargez le CSV

    Vérifiez l’aperçu du tableau, puis téléchargez le .csv ou copiez-le, avec un BOM UTF-8 si vous l’ouvrez dans Excel.

Limites et Pro

Fichiers XML jusqu’à 100 Mo, avec un nombre d’enregistrements illimité.

À propos de XML en CSV

XML vers CSV aplatit une arborescence en tableau. Vous indiquez quel élément correspond à un enregistrement (produit, commande, article, employé) et chacune de ses occurrences devient une ligne, dans l’ordre du document, où qu’elle se trouve dans le fichier. La liste des candidats affiche chaque élément répété avec son nombre d’occurrences : vous distinguez ainsi d’un coup d’œil catalog › product (240) de catalog › product › variant (1 130).

Les colonnes viennent du contenu de chaque enregistrement. Les attributs deviennent des colonnes sous leur propre nom (id, status) ; les éléments enfants aussi, et les niveaux plus profonds reçoivent des noms à points, comme customer.address.city. L’attribut d’un élément enfant s’écrit price.currency, à côté de price. Les colonnes apparaissent dans l’ordre où elles sont rencontrées pour la première fois, et un enregistrement qui en est dépourvu laisse simplement la cellule vide.

Quand un enregistrement répète un enfant, par exemple trois éléments <author> dans un même <book>, vous choisissez entre une seule cellule avec les valeurs séparées par des points-virgules (« Ann; Bob; Cy ») et des colonnes numérotées author.1, author.2, author.3, numérotées de la même façon sur chaque ligne pour que les colonnes restent alignées.

Le CSV respecte la norme RFC 4180 : les champs contenant le séparateur, des guillemets ou des sauts de ligne sont entre guillemets, et les lignes se terminent par CRLF. Choisissez le point-virgule pour les tableurs réglés sur la virgule décimale, et ajoutez le BOM UTF-8 pour qu’Excel sous Windows affiche correctement les lettres cyrilliques et accentuées. Les valeurs sont écrites comme du texte, exactement comme dans le XML ; la page XML vers Excel, elle, les type.

Confidentialité

Le fichier XML est analysé et aplati par un worker dans cet onglet de votre navigateur ; ni le XML ni le CSV ne sont envoyés ni stockés.

XML en CSV : questions fréquentes

Comment choisir l’élément qui devient une ligne ?
Utilisez « Une ligne par élément ». La liste présente chaque élément qui apparaît plusieurs fois sous le même parent, avec son chemin et son nombre d’occurrences, du moins profond au plus profond. Le premier est présélectionné, ce qui convient à la plupart des exports ; choisissez un chemin plus profond pour obtenir, par exemple, une ligne par ligne de commande plutôt qu’une par commande.
Que deviennent les éléments imbriqués ?
Ils deviennent des colonnes dont le nom suit le chemin depuis l’élément de l’enregistrement : <customer><city>Tashkent</city></customer> donne une colonne customer.city. Les attributs, à tous les niveaux, deviennent aussi des colonnes ; si un attribut porte le même nom qu’un élément enfant, sa colonne est précédée d’un @, pour qu’aucune valeur n’en écrase une autre.
Comment sont traitées les balises répétées dans un enregistrement ?
Par défaut, leurs valeurs se partagent une cellule, séparées par un point-virgule et une espace. Choisissez « Colonnes numérotées » pour les répartir sur tag.1, tag.2, etc. ; une balise répétée dans un seul enregistrement est numérotée dans tous, ce qui garde les colonnes alignées. Les colonnes numérotées conviennent aux tableurs, les cellules regroupées à la lecture ou à l’import dans un champ texte.
Pourquoi Excel affiche-t-il des caractères erronés à l’ouverture du CSV ?
Excel sous Windows suppose une ancienne page de code pour les fichiers CSV qui ne commencent pas par une marque d’ordre des octets. Activez « Ajouter un BOM UTF-8 » avant de télécharger, et des lettres comme oʻ, ё ou é s’affichent correctement. Si votre Excel utilise la virgule décimale, choisissez aussi le point-virgule comme séparateur pour que les colonnes se découpent bien.
Peut-il convertir un XML contenant plusieurs types d’enregistrements ?
Un seul type d’élément est transformé en lignes par conversion. Pour un fichier contenant à la fois des clients et des commandes, convertissez une première fois avec customer, puis une seconde avec order ; le fichier reste chargé, cela prend quelques secondes. Les valeurs des éléments situés hors de l’enregistrement choisi, comme un en-tête de document, ne sont pas répétées dans les lignes.

Autres usages de cet outil