Warum JSON in CSV umwandeln?
JSON ist das, was APIs zurückgeben. CSV ist das, was Tabellenkalkulationen öffnen. Fast jede Umwandlung zwischen beiden beginnt mit demselben Problem: Jemand hat eine JSON-Antwort einer API, einen Datenbankexport oder eine Logdatei und braucht sie in Excel, Google Sheets oder einem BI-Werkzeug, das noch nie von einem verschachtelten Objekt gehört hat.
Die Umwandlung ist unkompliziert, solange das JSON ein flaches Array aus Objekten mit identischen Schlüsseln ist. Unkompliziert bleibt sie nicht, sobald Datensätze verschachtelt sind, Schlüssel sich zwischen Datensätzen unterscheiden oder die Daten Kommas, Anführungszeichen und Zeilenumbrüche enthalten — was bei echten Daten immer der Fall ist.
Was dieser Konverter akzeptiert
Fügen Sie eine dieser Formen oben in das Feld ein:
- Ein Array aus Objekten — die verbreitete Form einer API-Antwort. Jedes Objekt wird eine Zeile, jeder Schlüssel eine Spalte.
- Ein Array aus Arrays — bereits in Zeilenform, wird direkt umgewandelt.
- Ein einzelnes Objekt — wird zu einer Zeile.
Die Schlüssel müssen über die Datensätze hinweg nicht übereinstimmen. Der Konverter sammelt jeden Schlüssel, dem er begegnet, und lässt Zellen leer, wo ein Datensatz diesen Schlüssel nicht hat, statt die Spalte zu verwerfen oder abzubrechen.
Umgang mit verschachtelten Objekten
Bei Verschachtelung geben die meisten Konverter entweder auf oder verstümmeln die Daten stillschweigend. Hier haben Sie zwei Möglichkeiten.
Zu Spalten mit Punktnotation abflachen steigt in verschachtelte Objekte hinab und bildet Spaltennamen aus dem Pfad. Aus einem Datensatz wie {"user":{"name":"Ada","city":"London"}} werden zwei Spalten, user.name und user.city. Das ist meist das Gewünschte, denn das Ergebnis ist wirklich tabellarisch und jeder Wert lässt sich in einer Tabellenkalkulation filtern und sortieren.
Als JSON in einer Zelle belassen lässt die verschachtelte Struktur serialisiert in einer einzelnen Zelle stehen. Nützlich, wenn der verschachtelte Teil eine Nutzlast ist, die Sie unverändert bewahren statt auswerten wollen — etwa ein Einstellungsblock, den Sie in ein anderes System zurückspielen möchten.
Die vier Optionen, die darüber entscheiden, ob Excel Ihre Datei richtig öffnet
Trennzeichen
Das Komma ist Standard, in weiten Teilen Europas aber die falsche Wahl. In Ländereinstellungen, in denen das Komma das Dezimaltrennzeichen ist, erwartet Excel semikolongetrennte Dateien und quetscht andernfalls jede Zeile in eine einzige Spalte. Tabulator und Pipe sind die sichersten Optionen, wenn Ihre Daten selbst Satzzeichen enthalten.
UTF-8-BOM hinzufügen
Das ist die Lösung für die mit Abstand häufigste Beschwerde über CSV-Dateien: Umlaute und nicht-lateinische Schriften, die beim Öffnen in Excel als Zeichensalat ankommen. Excel setzt UTF-8 nicht voraus und rät ohne Byte Order Mark — meist falsch. Enthalten Ihre Daten irgendetwas jenseits von reinem ASCII, schalten Sie das ein.
Jedes Feld in Anführungszeichen setzen
Standardmäßig erhalten nur Felder Anführungszeichen, die sie brauchen. Alles zu quoten erzeugt eine größere Datei, beseitigt aber jede Mehrdeutigkeit, was manche strengen Parser bevorzugen.
Tabellenkalkulations-Formeln neutralisieren
Das ist eine Sicherheitsmaßnahme und keine Formatierungsvorliebe — und verdient einen eigenen Abschnitt.
CSV-Injection, und warum die Formeloption zählt
Beginnt ein Zellwert mit =, +, - oder @, interpretieren Excel und Google Sheets ihn als Formel statt als Text. Das ist ein echter Angriffsweg: Wer Text in Ihre Datenbank bringen kann — über ein Anmeldeformular, ein Support-Ticket, eine Produktbewertung — kann einen Wert platzieren, der ausgeführt wird, sobald jemand die Daten exportiert und in einer Tabellenkalkulation öffnet. Das Verfahren ist gut dokumentiert und heißt üblicherweise CSV-Injection oder Formel-Injection.
Aktiviert man Tabellenkalkulations-Formeln neutralisieren, erhalten solche Werte ein vorangestelltes Zeichen, damit die Tabellenkalkulation sie als reinen Text behandelt. Enthält das JSON, das Sie umwandeln, irgendetwas aus Benutzereingaben, lassen Sie die Option eingeschaltet. Der Preis ist ein harmloses Präfix an einer Handvoll Zellen; die Alternative ist, die Formel eines Fremden auf Ihrem Rechner auszuführen.
So wandeln Sie JSON in CSV um
- Fügen Sie Ihr JSON in das Eingabefeld ein.
- Wählen Sie ein Trennzeichen und entscheiden Sie, wie verschachtelte Werte behandelt werden sollen.
- Stellen Sie Kopfzeile, Anführungszeichen, BOM und Formeloption passend zum Ziel der Datei ein.
- Umwandeln, dann das Ergebnis kopieren oder als
.csv-Datei herunterladen.
Alles läuft in Ihrem Browser. Das JSON wird nicht hochgeladen, und das zählt, wenn Sie eine API-Antwort mit Kundendatensätzen, Tokens oder internen Kennungen umwandeln.