Ratgeber · Grundlagen & Praxis
CSV in JSON umwandeln: Anleitung in fünf Schritten
Eine CSV-Datei aus Excel, einem CRM oder einer Datenbank ist schnell erstellt, viele Schnittstellen und Datenbanken erwarten aber JSON. Diese Anleitung zeigt die Umwandlung Schritt für Schritt und die Stellen, an denen sie schiefgeht.
CSV ist das gängige Austauschformat für Tabellen, JSON das gängige Format für Schnittstellen, JavaScript-Anwendungen und Dokumentendatenbanken. Wer Daten von der einen in die andere Welt bringen muss, braucht keinen Code: Der Konverter auf der Startseite erledigt das im Browser, ohne Upload und ohne Anmeldung. Die folgenden Schritte erklären, was die Optionen bewirken.
Schritt 1: Daten einfügen oder Datei öffnen
Kopieren Sie den Inhalt der CSV in das Eingabefeld oder öffnen Sie die Datei, auch per Drag and Drop. Die Datei wird nur in Ihrem Browser gelesen. Wer kein Beispiel zur Hand hat, nutzt „Beispiel einfügen“ und sieht sofort, wie eine passende CSV aussieht.
Die erste Zeile enthält in der Regel die Spaltennamen. Sie werden zu den Schlüsseln im JSON.
Schritt 2: Trennzeichen prüfen
CSV steht für „Comma-Separated Values“, in der Praxis trennen aber auch Semikolon, Tabulator und senkrechter Strich die Felder. Das Semikolon ist in Deutschland üblich, weil das Komma dort als Dezimaltrennzeichen dient. Die Einstellung „Automatisch erkennen“ vergleicht die ersten Zeilen und wählt das Zeichen mit der gleichmäßigsten Spaltenzahl. Unter der Auswahl zeigt der Konverter, was er erkannt hat. Stimmt es nicht, wählen Sie das Zeichen selbst.
Schritt 3: Kopfzeile und Typen festlegen
Mit eingeschalteter Kopfzeile liefert die erste Zeile die Schlüssel. Ohne Kopfzeile heißen sie spalte1, spalte2 und so weiter.
Die Typerkennung entscheidet, ob aus dem Text 42 die Zahl 42 wird und aus true der Wahrheitswert. Das ist praktisch für Zahlen, die weiterverarbeitet werden. Zwei Regeln schützen Ihre Daten:
- Enthält eine Spalte einen Wert mit führender Null wie die Postleitzahl
01067, bleibt die ganze Spalte Text, damit die Null nicht verloren geht. Der Konverter weist in einem Hinweis darauf hin. - Ganze Zahlen über 9.007.199.254.740.991 bleiben ebenfalls Text, weil JavaScript sie nicht exakt darstellen kann.
Sollen alle Werte Text bleiben, schalten Sie die Typerkennung ab. Zahlen mit Dezimalkomma (3,14) werden nur gelesen, wenn Sie die zugehörige Option einschalten, denn JSON kennt nur den Punkt.
Schritt 4: Ausgabeformat wählen
- Array von Objekten ist der Standard: Jede Zeile wird ein Objekt mit den Spaltennamen als Schlüssel. Die meisten Schnittstellen erwarten genau das.
- Array von Arrays speichert jede Zeile als Liste ohne Schlüssel. Die Kopfzeile steht als erste Liste. Das Ergebnis ist kürzer, die Bedeutung der Spalten ergibt sich nur aus der Reihenfolge.
- JSON Lines schreibt ein Objekt pro Zeile ohne umschließendes Array, passend zum Ratgeber JSON Lines (NDJSON).
Dazu kommt die Einrückung: eingerückt zum Lesen, kompakt zum Sparen von Platz.
Schritt 5: Ergebnis prüfen und übernehmen
Das JSON erscheint sofort unter den Optionen, als Tabelle und als Text. Die Tabelle zeigt die ersten 100 Zeilen, Kopieren und Herunterladen liefern immer alles. Prüfen Sie Warnungen: Der Konverter meldet Zeilen mit abweichender Spaltenzahl, doppelte oder leere Spaltennamen und nicht geschlossene Anführungszeichen.
Beispiel
Diese Excel-CSV mit Semikolon:
PLZ;Ort;Einwohner
01067;Dresden;566222
20095;Hamburg;1910160
ergibt mit Standardeinstellungen:
[
{ "PLZ": "01067", "Ort": "Dresden", "Einwohner": 566222 },
{ "PLZ": "20095", "Ort": "Hamburg", "Einwohner": 1910160 }
]
Die Einwohnerzahl ist eine Zahl, die Postleitzahl-Spalte bleibt Text, weil ein Wert mit Null beginnt. Mehr zu Excel-Exporten steht im Ratgeber Excel-CSV mit Semikolon in JSON umwandeln.
Typische Fehler
| Symptom | Ursache | Lösung |
|---|---|---|
| Alles in einem Feld | Falsches Trennzeichen | Anderes Zeichen wählen |
| Erster Schlüssel enthält ein unsichtbares Zeichen | BOM am Dateianfang | Der Konverter entfernt es; bei eigenen Skripten ausdrücklich behandeln |
| Umlaute sind kaputt | Datei nicht in UTF-8 gespeichert | Beim Öffnen einer Datei liest der Konverter ersatzweise Windows-1252 und weist darauf hin |
| Führende Nullen fehlen | Nullen wurden schon in Excel entfernt | In Excel die Spalte als Text importieren, der Konverter kann verlorene Nullen nicht wiederherstellen |
| Spaltenzahl schwankt | Feld mit Trennzeichen ohne Anführungszeichen | Felder nach RFC 4180 in Anführungszeichen setzen |
Worauf es ankommt
Prüfen Sie Trennzeichen und Typerkennung, bevor Sie das Ergebnis weitergeben, und lesen Sie die Warnungen. Dann ist die Umwandlung in wenigen Sekunden erledigt. Warum JSON und CSV so verschieden sind, erklärt der Ratgeber CSV und JSON: die Unterschiede.
FAQ
Häufige Fragen
Warum steht nach der Umwandlung alles in einem einzigen Feld?
Fast immer ist das Trennzeichen falsch gewählt. Deutsche Excel-Exporte nutzen das Semikolon, viele andere Programme das Komma. Mit der Einstellung „Automatisch erkennen“ findet der Konverter das passende Zeichen meist selbst, sonst wählen Sie es von Hand.
Kann ich die Kopfzeile weglassen?
Ja. Schalten Sie „Erste Zeile ist die Kopfzeile“ aus. Dann heißen die Schlüssel spalte1, spalte2 und so weiter, oder Sie wählen das Format „Array von Arrays“, das ganz ohne Schlüssel auskommt.
Wie bekomme ich verschachteltes JSON aus einer flachen CSV?
Benennen Sie die Spalten mit Punkt-Pfaden, etwa adresse.ort und adresse.plz, und aktivieren Sie die Option „Punkt-Pfade wieder zu Objekten machen“. Aus den beiden Spalten wird ein Objekt adresse mit den Feldern ort und plz.
Quellen