CSV in XML umwandeln
Eine CSV-Tabelle Zeile für Zeile in XML-Datensätze überführen; eine Semikolon-Datei aus dem deutschen Excel wird von selbst erkannt
Ihre Daten bleiben bei Ihnen. Die Umwandlung läuft im Browser; nichts wird an einen Server gesendet.
Hat dieses Werkzeug geholfen?
Danke, Ihre Rückmeldung ist angekommen.
So funktioniert es
Der typische Fall: Sie führen eine Artikelliste oder Kundenliste in Excel, und die Buchhaltung, der Steuerberater oder ein Warenwirtschaftssystem verlangt die Daten als XML-Datei. Speichern Sie die Tabelle in Excel über "Datei → Speichern unter" als CSV, öffnen Sie die Datei mit dem Editor und fügen Sie den Inhalt in das linke Feld ein; das XML erscheint sofort im rechten Feld. Ein deutsches Excel trennt die Spalten mit Semikolon, weil das Komma als Dezimalzeichen belegt ist; das Werkzeug erkennt das an den ersten Zeilen von selbst. Aus der Überschrift "Artikel;Menge;Preis" und 200 Zeilen darunter wird ein Dokument mit 200 <row>-Elementen, in denen jeweils <Artikel>, <Menge> und <Preis> stehen. Erwartet das Zielprogramm <artikel> innerhalb von <artikelliste>, tragen Sie diese beiden Namen in die Felder für Zeilen- und Wurzelelement ein. Enthält eine Überschrift ein Leerzeichen oder eine Klammer, wird daraus ein Unterstrich ("Preis (netto)" → Preis__netto_), vor eine Überschrift, die mit einer Ziffer beginnt, kommt ein Unterstrich; die Ergebniszeile nennt jede Änderung. Zellwerte werden unverändert als Text übernommen: Der Betrag 1.250,00 und die Telefonnummer 0171… bleiben genau so stehen, denn XML kennt keinen Zahlentyp, und die Deutung ist Sache des lesenden Programms. Ein Semikolon oder ein Zeilenumbruch in Anführungszeichen gilt als Inhalt und trennt keine Spalte. Die Ausgabe kopieren Sie mit einem Klick oder laden sie als .xml-Datei herunter.
Dieses Werkzeug ist auch als csv in xml umwandeln, csv in xml umwandeln online, csv datei in xml umwandeln, csv zu xml konvertieren, csv to xml bekannt.
Was ist CSV?
CSV ist eine Tabelle als reiner Text: Jede Zeile ist ein Datensatz, die Zellen einer Zeile sind durch ein Trennzeichen getrennt. Excel, LibreOffice Calc, Online-Banking und Shop-Systeme bieten dieses Format beim Exportieren an. Die Schwierigkeit liegt im Trennzeichen: Der Name sagt "durch Komma getrennt", ein deutsches Excel schreibt aber ein Semikolon, weil das Komma für Dezimalzahlen wie 45,50 gebraucht wird; aus Excel kopierte Tabellen tragen Tabulatoren, manche Berichte einen senkrechten Strich. Steht das Trennzeichen selbst in einer Zelle, wird die Zelle in doppelte Anführungszeichen gesetzt und ein Anführungszeichen darin verdoppelt; ein Leser ohne diese Regel zerlegt "Teller; Porzellan" in zwei Spalten. Dieses Werkzeug erkennt das Trennzeichen an den ersten Zeilen und wendet die Anführungszeichenregel an.
Was ist XML?
XML ist ein Textformat, in dem jeder Wert zwischen einem öffnenden und einem schließenden Tag steht: <Preis>320,00</Preis>. Die Tags heißen Elemente; ein Dokument hat genau ein äußerstes Element, die Wurzel, und alle Daten liegen verschachtelt darin. Ein Elementname beginnt mit einem Buchstaben oder Unterstrich und enthält kein Leerzeichen; deshalb müssen Tabellenüberschriften beim Übergang nach XML oft angepasst werden. Buchhaltung, Warenwirtschaft und Behördenschnittstellen verlangen XML, weil jeder Wert durch seinen Tag-Namen sagt, zu welchem Feld er gehört, unabhängig von der Spaltenreihenfolge. Einen Zahlentyp kennt XML nicht: 1.250,00 steht als Text im Tag, und ob das ein Betrag ist, entscheidet erst das lesende Programm oder ein Schema.
Was ist der Unterschied zwischen CSV und XML?
CSV ist eine Tabelle: Was ein Wert bedeutet, ergibt sich aus seiner Position, die dritte Zelle gehört zur dritten Überschrift, und ein anderes Trennzeichen, Anführungszeichen oder Dezimalzeichen kann die Datei unbemerkt zerstören. In XML steht jeder Wert in seinem eigenen benannten Tag, die Spaltenreihenfolge ist gleichgültig, die Datei erklärt sich selbst und lässt sich gegen ein Schema (XSD) prüfen; der Preis ist die Größe, dieselbe Tabelle ist als XML um ein Mehrfaches länger. Einen Datentyp kennt keines der beiden Formate, "1.250,00" ist in CSV wie in XML Text; der Unterschied ist, dass XML diesen Text mit einem Namen versieht und in eine verschachtelte Struktur setzen kann. Soll die Tabelle in Excel geöffnet werden, nehmen Sie CSV; geht sie an ein Programm oder eine Behörde, nehmen Sie XML.
Drei Stolperstellen: Überschrift, Dezimalkomma, Trennzeichen in Anführungszeichen
Überschrift: Ein XML-Elementname darf kein Leerzeichen, keine Klammer und die meisten Satzzeichen nicht enthalten und nicht mit einer Ziffer beginnen. Würde "Preis (netto)" unverändert übernommen, ließe sich die Datei in keinem Programm öffnen. Das Werkzeug verwirft die Überschrift nicht, sondern passt sie an und meldet es in der Ergebniszeile: "Preis (netto)" → <Preis__netto_>, "2024 Umsatz" → <_2024_Umsatz>. Umlaute und ß bleiben erhalten, <Größe> ist ein gültiger Name. Kommt dieselbe Überschrift in zwei Spalten vor, erhält die zweite den Zusatz _2, damit zwei Spalten nicht unter einem Namen zusammenfallen.
Dezimalkomma: Dieses Werkzeug deutet Zellwerte nicht. Anders als beim Werkzeug CSV in JSON gibt es hier keinen Schritt "Zahlen umwandeln", weil XML keinen Zahlentyp kennt; jeder Wert ist Text zwischen zwei Tags. Der Betrag 1.250,00, der Anteil 12,5 und die Telefonnummer 0171… kommen genau so heraus, wie sie in der Tabelle stehen. Kann das Zielprogramm das Komma nicht als Dezimalzeichen lesen, ändern Sie die Schreibweise vor dem Umwandeln in Excel; das Werkzeug rät nicht für Sie.
Trennzeichen in Anführungszeichen: Ein Semikolon in einer Zelle wie "Teller; Porzellan" trennt keine Spalte, ein Zeilenumbruch in Anführungszeichen trennt keinen Datensatz; ein verdoppeltes Anführungszeichen ("") wird als ein einzelnes gelesen. Hat eine Zeile mehr Zellen als die Überschrift, heißen die überzähligen spalte4, spalte5 und so weiter; in einer kürzeren Zeile fehlen die Felder einfach und werden nicht als leer geschrieben.
- "Preis (netto)" → <Preis__netto_> (Leerzeichen und Klammern werden Unterstriche, wird gemeldet)
- "2024 Umsatz" → <_2024_Umsatz> (Unterstrich vor führender Ziffer)
- 1.250,00 · 12,5 · 0171… → unverändert als Text, keine Deutung
- "Teller; Porzellan" → eine Zelle, das Semikolon in Anführungszeichen ist Inhalt
Welche Einstellung für welchen Fall?
Zeilenelement: Der Standardname row funktioniert in den meisten Importmasken. Erwartet das Zielsystem einen bestimmten Namen (artikel in einer Artikelliste, kunde in einer Kundenliste, buchung in einem Journal), tragen Sie ihn ein; die Ausgabe ist dann ohne Nacharbeit verwendbar. Auch Ihr Name durchläuft die XML-Regeln: Aus "artikel eintrag" wird <artikel_eintrag>.
Wurzelelement: XML verlangt genau ein äußerstes Element. Der Name root ist neutral und deshalb sicher; wird eine Struktur wie <artikelliste> mit <artikel> darin verlangt, tragen Sie artikelliste in das Wurzelfeld ein. Üblich ist die Wurzel im Plural und das Zeilenelement im Singular; so versteht auch ein Mensch die Datei auf den ersten Blick.
Leere Zelle: Sucht das Zielprogramm in jedem Datensatz dieselben Felder (das ist bei den meisten Importen so), lassen Sie "Leeres Element schreiben" stehen; eine leere Telefonzelle wird zu <Telefon/>, und die Zahl der Felder bleibt gleich. Soll die Datei klein bleiben oder sollen leere Felder gar nicht erscheinen, wählen Sie "Auslassen". Das Trennzeichen stellen Sie nur dann von Hand ein, wenn die Erkennung danebenliegt: Kommt in den ersten Zeilen ein Semikolon auch als Text vor, bringt die Wahl "Semikolon" ein sicheres Ergebnis.
Häufige Fragen
Wie wandle ich eine CSV-Datei in XML um?
Öffnen Sie die CSV-Datei mit dem Editor, TextEdit oder einem anderen Textprogramm, kopieren Sie den Inhalt und fügen Sie ihn in das linke Feld dieser Seite ein; das XML entsteht sofort im rechten Feld. Die erste Zeile gilt als Überschrift, jede Überschrift wird ein Elementname, jede Datenzeile ein <row>-Element. Das Ergebnis kopieren Sie oder laden es als .xml-Datei herunter.
Warum landet meine Excel-CSV in einer einzigen Spalte?
Ein deutsches Excel trennt die Spalten in einer CSV mit Semikolon, weil das Komma als Dezimalzeichen dient; ein Programm, das Kommas erwartet, sieht dann eine einzige Spalte. Auf dieser Seite wird das Trennzeichen an den ersten Zeilen erkannt, eine Semikolon-Datei wird also richtig zerlegt. Sehen Sie trotzdem nur eine Spalte, wählen Sie unter "Trennzeichen zwischen den Spalten" den Eintrag "Semikolon — deutsches Excel"; an der Zahl der Felder in der Ergebniszeile sehen Sie, dass es stimmt.
Warum sehen die Spaltenüberschriften im XML anders aus?
Ein XML-Elementname darf weder Leerzeichen noch Klammern oder Anführungszeichen enthalten und nicht mit einer Ziffer oder mit "xml" beginnen. Eine solche Überschrift unverändert zu übernehmen ergäbe eine Datei, die kein Parser liest. Das Werkzeug passt sie an: Leerzeichen und unzulässige Zeichen werden Unterstriche, vor eine führende Ziffer kommt ein Unterstrich, Umlaute bleiben. Wie viele Überschriften geändert wurden und was aus jeder wurde, steht in der Ergebniszeile; schreiben Sie die Überschriften in der CSV von vornherein ohne Leer- und Sonderzeichen, ändert sich nichts.
Werden die eingefügten Daten an einen Server geschickt?
Nein. Das Zerlegen der CSV und das Schreiben des XML laufen vollständig in Ihrem Browser; auch eine Kundenliste, eine Preisliste oder ein Kontoauszug verlässt diese Seite nicht und wird nirgends gespeichert. Sobald die Seite geladen ist, funktioniert die Umwandlung auch ohne Internetverbindung.