JSON zu CSV konvertieren: ein Array von Objekten abflachen
Ein JSON-Array von Objekten wird zu einer CSV-Tabelle — eine Zeile pro Objekt, Spalten aus der Vereinigung der Schlüssel. Die eigentliche Arbeit liegt im Quoting und im Umgang mit verschachtelten Werten.
Die Form «Array von Objekten»
CSV ist eine flache Tabelle, deshalb konvertiert sich JSON sauber, wenn es ein Array von Objekten ist: jedes Objekt eine Zeile, jeder Schlüssel eine Spalte.
Den Header bauen
Nimm die Vereinigung aller Objektschlüssel als Header, nicht nur die des ersten Objekts, damit Einträge mit zusätzlichen oder fehlenden Feldern weiterhin ausgerichtet bleiben. Fehlende Zellen bleiben leer.
Quoting-Regeln
Jeder Wert mit Komma, doppeltem Anführungszeichen oder Zeilenumbruch muss in doppelte Anführungszeichen gesetzt und enthaltene Anführungszeichen verdoppelt werden, sonst verrutschen die Spalten.
Verschachtelte Werte
Objekte und Arrays haben keine flache CSV-Form: schreibe sie als JSON-Text in die Zelle (reversibel) oder flachiere sie in Spalten wie address.city.
Header-Reihenfolge und Stabilität
Sortiere die Schlüsselvereinigung oder fixiere die Reihenfolge auf die des ersten Datensatzes und hänge Extras hinten an. Eine stabile Header-Reihenfolge macht Diffs zwischen Exporten nützlich und vermeidet, dass Spalten in jedem Lauf neu sortiert werden.
Datums- und Zahlenformat
Tabellenkalkulationen interpretieren Werte aggressiv um: lange numerische IDs verlieren Präzision, ISO-Daten werden umformatiert, führende Nullen verschwinden. Wenn ein Wert exakt zurückkommen muss, setze ihn in Anführungszeichen und stelle beim Einfügen in Excel ein einfaches Anführungszeichen voran.
Excel- und Google-Sheets-Kompatibilität
Nimm CRLF-Zeilenenden und ein BOM (UTF-8 mit Byte-Order-Mark), damit Excel Unicode erkennt. Für Google Sheets ist das BOM optional, aber Kommas als Trenner und das Verdoppeln von doppelten Anführungszeichen gelten weiterhin.
Von CSV zurück zu JSON
Parse Zeilen mit einem quotenbewussten Split (kein naives Split bei Komma), nutze die erste Zeile als Spaltennamen und versuche pro Spalte Zahlen, Booleans und ISO-Daten zu casten. Der Roundtrip in diesem Tool lässt Strings als Strings, außer eine Spalte ist durchgehend numerisch.
Häufige Fallstricke
Diese Probleme zerlegen die meisten CSV-Exporte.
- Nicht-escapete Kommas in String-Werten
- Zeilenumbrüche in Zellen ohne umschließende Anführungszeichen
- Gemischte Encodings (UTF-8 vs. Latin-1), die Mojibake erzeugen
- Große Integer (IDs), die Tabellenkalkulationen stillschweigend abschneiden
- Booleans, die als Strings "true"/"false" statt als TRUE/FALSE gespeichert werden
JSON-Reparatur-Anleitungen
Themen-Hubs
- JSON Parse Errors: Read the Message, Jump to the Fix
- Fix Invalid JSON: From 'What's Wrong' to a Clean File
- JSON Formatter, Validator, Viewer: Pick the Right Tool
- Repair LLM JSON Output: Handling Almost-JSON from AI
- Privacy: JSON Tools That Don't Leave Your Browser
- JSON Interop: YAML, CSV, XML, JWT, Schema
Konkrete Anleitungen
- Base64-Strings dekodieren (und JWT-Payloads)
- URL-Kodierung: Query-Parameter und Pfade prozentkodieren
- YAML zu JSON konvertieren (und Einrückungsfehler vermeiden)
- JSON zu XML konvertieren: Wurzel, Attribute und Arrays
- JSON als String-Literal escapen (und doppelt kodiertes JSON dekodieren)
- Nachgestellte Kommas in JSON beheben
- Einfache Anführungszeichen in JSON beheben
- Unanführte Schlüssel in JSON beheben
- LLM-JSON-Ausgabe reparieren
- JSON-Parse-Fehler «Expected Property Name» beheben
- JSON vs. JavaScript-Objektliteral
- JSON vor API-Anfragen validieren
- JSON-Formatter vs. JSON Repair
- JSON-Fehler «Unexpected Token» beheben
- JSON-zu-JavaScript-Objekt-Konverter