Zum Hauptinhalt springen

← Zurück zum Blog

JSON in CSV und Excel umwandeln (und zurück)

Code spricht JSON, Tabellen sprechen CSV und Excel — früher oder später musst du Daten von einem ins andere bringen. Die drei Formate enthalten dieselben Zeilen und Spalten; die Kunst ist, sie beim Umwandeln nicht zu zerstören. So geht es.

Wofür jedes Format gut ist

  • JSON — strukturierte Daten für Code und APIs. Tabellendaten sind meist ein Array von Objekten: [{"name":"Ann","age":30}, …], wobei jedes Objekt eine Zeile ist.
  • CSV — eine Klartext-Tabelle (kommagetrennt). Universell, winzig und von fast allem importierbar.
  • Excel (.xlsx) — eine binäre Tabelle mit Formatierung, mehreren Blättern und Formeln. Das, was die meisten Kollegen tatsächlich öffnen.

JSON zu CSV

Am saubersten wandelt sich ein Array flacher Objekte um. Jedes Objekt wird eine Zeile; die Schlüssel werden die Kopfzeile. Verschachtelte Objekte passen nicht ordentlich in eine flache Tabelle — flache sie zuerst ab (oder erwarte, dass nur die oberste Ebene umgewandelt wird).

JSON zu Excel

Gleiche Idee, aber die Ausgabe ist eine .xlsx, die sich direkt in Excel, Numbers oder Google Sheets öffnet — kein Importschritt. Ideal, wenn du Daten an jemanden gibst, der in Tabellen lebt.

CSV oder Excel zurück zu JSON

Andersherum wird aus einer Tabelle ein Array von Objekten, das dein Code parsen kann — super, um eine Datenbank zu füllen, eine API zu speisen oder Testdaten zu laden.

Im Browser — nichts wird hochgeladen

Datendateien enthalten oft sensible Informationen, daher ist ein Tool, das sie hochlädt, ein Risiko. Diese laufen komplett auf deinem Gerät:

Tipps für saubere Ergebnisse

  • Mach dein JSON zu einem Array von Objekten mit einheitlichen Schlüsseln — das entspricht 1:1 den Spalten.
  • Validiere das JSON zuerst (ein einziges überflüssiges Komma zerstört alles).
  • Bei Excel: Die Ausgabe ist eine echte .xlsx — kein umbenanntes CSV.

Beherrsche die Array-von-Objekten-Form, und der Wechsel zwischen JSON, CSV und Excel wird zur Zwei-Klick-Aufgabe ohne Upload.