Convertisseur en ligne gratuit de CSV en XML
Convertissez les données CSV tabulaires en XML structuré pour les systèmes nécessitant des éléments nommés et des schémas.
Convertir CSV en XML en ligne - gratuit
Votre fichier est traité instantanément et n'est pas stocké sur nos serveurs.
Comment convertir csv en fichier xml
- Fichiers texte
- Aucune note pour l'instant.
Un système d’importation de données, un appareil ou une application métier peut nécessiter un fichier XML plutôt qu’un fichier CSV tabulaire. La conversion conserve les enregistrements tout en exprimant leurs champs sous forme d’éléments nommés que les logiciels peuvent traiter, valider et échanger.
Qu’est-ce que le format CSV ?
CSV (comma-separated values) stocke des données rectangulaires sous forme de lignes et de colonnes. Chaque ligne représente généralement un enregistrement, et la première ligne peut contenir des noms de colonnes tels que id,name,price.
Malgré son nom, un fichier CSV peut utiliser des virgules, des points-virgules, des tabulations ou un autre délimiteur. Les valeurs contenant le délimiteur, des sauts de ligne ou des guillemets sont normalement placées entre guillemets doubles ; un guillemet double intégré est représenté par deux guillemets doubles consécutifs. Les conventions CSV ne sont pas complètement uniformes. Le délimiteur, les règles de mise entre guillemets, les fins de ligne et l’encodage des caractères doivent donc être identifiés avant la conversion.
Les applications de tableur telles que Microsoft Excel et LibreOffice Calc exportent des fichiers CSV. Les bases de données, les systèmes de comptabilité, les gestionnaires de contacts, les instruments de laboratoire et les scripts les utilisent également. CSV convient aux tableaux simples, mais ne décrit pas nativement les enregistrements imbriqués, les attributs, les types de données, les règles de validation ou les relations entre les tables.
Qu’est-ce que le format XML ?
XML (Extensible Markup Language) stocke du texte structuré à l’aide d’éléments et d’attributs. Une ligne correspondant à un client peut devenir un élément <customer> contenant des éléments enfants tels que <id>, <name> et <email>.
XML peut représenter une hiérarchie, des enregistrements répétés, des espaces de noms, des commentaires et des règles de validation définies par un schéma tel que XSD. Ces fonctionnalités prennent en charge les interfaces d’application, les fichiers de configuration, l’échange de documents, les systèmes de publication et les archives qui nécessitent une structure explicite. XML est généralement plus verbeux que CSV, et un convertisseur ne peut pas déduire les relations métier ou le schéma requis par le destinataire à partir des seuls noms de colonnes.
Comment convertir des fichiers CSV en XML
Utilisation du convertisseur en ligne intégré
- Ouvrez le convertisseur CSV-to-XML sur 101convert.com.
- Sélectionnez ou téléversez le fichier source
.csv. - Choisissez le délimiteur utilisé par le fichier, généralement une virgule, un point-virgule ou une tabulation, et indiquez si la première ligne contient les en-têtes de colonnes.
- Sélectionnez UTF-8 lorsque les données contiennent des caractères accentués, du texte non latin ou des symboles.
- Choisissez la structure XML si des options sont disponibles. Une structure courante comporte un élément racine, un élément d’enregistrement répété et un élément enfant pour chaque colonne.
- Lancez la conversion et téléchargez le fichier
.xmlobtenu.
Les fichiers peuvent être convertis sur 101convert.com sans installer de logiciel. Ne téléversez pas de données confidentielles, réglementées ou permettant d’identifier des personnes, sauf si le service respecte les exigences applicables en matière de traitement des données.
Utilisation de Python
La bibliothèque standard de Python permet d’effectuer des conversions répétables sans package supplémentaire. Cet exemple lit une ligne d’en-têtes, utilise un mappage prudent pour les noms d’éléments XML et écrit un XML en UTF-8 :
import csv
import re
import xml.etree.ElementTree as ET
def xml_name(header, number):
name = re.sub(r"[^A-Za-z0-9_.-]", "_", header.strip())
if not name or not re.match(r"^[A-Za-z_]", name):
name = f"field_{number}"
return name
root = ET.Element("records")
with open("input.csv", newline="", encoding="utf-8-sig") as source:
reader = csv.DictReader(source, delimiter=",")
headers = [xml_name(h or "", i) for i, h in enumerate(reader.fieldnames or [], 1)]
for values in reader:
record = ET.SubElement(root, "record")
for number, (original, value) in enumerate(values.items(), 1):
field = ET.SubElement(record, headers[number - 1])
field.text = value or ""
ET.ElementTree(root).write("output.xml", encoding="utf-8", xml_declaration=True)
Enregistrez le script sous le nom csv_to_xml.py et exécutez python csv_to_xml.py. Modifiez delimiter="," pour un fichier délimité par des points-virgules ou des tabulations, et remplacez records et record par les noms requis par le système destinataire. Le script suppose que les en-têtes sont uniques ; après le nettoyage des noms, les en-têtes en double doivent être renommés ou mappés explicitement.
Vérifications de compatibilité et de qualité des données
- Mappez la structure au schéma de destination. Un fichier XML bien formé peut tout de même être rejeté s’il comporte un élément racine, un espace de noms, une imbrication, un ordre de champs, un élément obligatoire ou un format de données incorrect. Utilisez le XSD ou un exemple de fichier XML du destinataire lorsqu’il est disponible.
- Vérifiez les noms des éléments XML. Les noms d’en-têtes ne peuvent pas être utilisés tels quels lorsqu’ils commencent par un chiffre ou contiennent des espaces et d’autres caractères interdits. Renommez-les ou configurez un mappage explicite. Évitez de convertir directement des en-têtes arbitraires en balises XML sans validation.
- Définissez explicitement les types de données. CSV ne distingue pas de manière fiable les identifiants, les nombres, les dates et les valeurs booléennes. Conservez sous forme de chaînes les valeurs telles que
00125lorsque les zéros initiaux sont importants, et spécifiez les séparateurs décimaux, les formats de date et les représentations booléennes. - Décidez comment représenter les champs vides. Un élément manquant, un élément vide tel que
<email/>et un attribut vide peuvent avoir des significations différentes pour l’application destinataire. - Vérifiez l’encodage. UTF-8 est le choix habituel. La déclaration XML, telle que
<?xml version="1.0" encoding="UTF-8"?>, doit correspondre à l’encodage réel du fichier. - Conservez l’échappement. Les esperluettes, les signes inférieur à et les autres caractères réservés doivent être échappés dans XML. Les bibliothèques et les convertisseurs appropriés s’en chargent ; la concaténation manuelle de chaînes XML peut produire des documents non valides.
- Vérifiez les lignes et les valeurs après la conversion. Comparez le nombre d’enregistrements, les en-têtes, des champs représentatifs entre guillemets, les sauts de ligne, les valeurs vides, les dates, les valeurs décimales et les caractères non ASCII avec la source. Les fichiers volumineux peuvent également nécessiter un convertisseur en flux plutôt que le chargement de l’ensemble du jeu de données en mémoire.
Comparaison du format CSV vs XML
Comparaison entre les formats CSV et XML sur les propriétés les plus importantes pour cette conversion.
| Propriété | .CSV Comma-Separated Values | .XML Extensible Markup Language |
|---|---|---|
| Lisible en texte brut | Oui | Oui |
| Types de données | Typé | Typé |
| Structures imbriquées | Non | Oui |
| Formules | Non | Non |
| Plusieurs tables ou feuilles | Non | — |
| Taille de fichier typique | Petit | Petit |
| Norme ouverte | Oui | Oui |
| Idéal pour | Échange de données | Échange de données |
| Date d’introduction | — | 1998 |
| Développeur | — | W3C |
| Type MIME | text/csv | application/xml |
Logiciel suggéré pour convertir csv en xml
Questions fréquentes
Le convertisseur CSV en XML est-il gratuit ?
Oui, la conversion de CSV en XML sur 101convert.com est entièrement gratuite. Aucune inscription, adresse e-mail ou installation n'est requise.
Quelle taille mon fichier CSV peut-il avoir ?
Vous pouvez téléverser des fichiers CSV jusqu'à 300 Mo et convertir jusqu'à 100 fichiers à la fois en un seul lot.
Qu'advient-il de mes fichiers téléversés ?
Les fichiers sont traités automatiquement et supprimés de nos serveurs quelques minutes après la conversion. Nous ne consultons ni ne partageons jamais vos fichiers.
Dois-je installer un logiciel pour convertir CSV en XML ?
Non. La conversion de CSV en XML s'effectue entièrement en ligne dans votre navigateur et fonctionne sous Windows, Mac, Linux, Android et iPhone.
La conversion a-t-elle échoué ?
Dans la plupart des cas, la cause est un format de fichier incorrect. Importez un fichier CSV valide pour cette conversion de CSV en XML. Il peut aussi arriver que le problème vienne de notre côté. Nous analysons les échecs de conversion récurrents et désactivons ou réparons le convertisseur si nous détectons un défaut.