Zum Inhalt springen

JSON ⇄ CSV umwandeln

JSON ⇄ CSV

Flacht verschachteltes JSON zu Spalten ab oder baut Objekte aus einer Tabelle wieder auf, mit Punktpfad-Regel für die Spaltennamen.

Wandelt ein Array von JSON-Objekten in eine Tabellenkalkulationstabelle um: eine Zeile pro Datensatz, eine Spalte pro Schlüssel. Interessant ist, was mit den Teilen von JSON geschieht, für die eine Tabelle keinen Platz hat – verschachtelte Objekte, Arrays und Datensätze, die nicht alle dieselben Schlüssel tragen –, und jeder davon ist eine Entscheidung, die Sie oben auf der Seite treffen.

🔒 Läuft vollständig in Ihrem Browserjsoncsvconverttable
Verschachtelte Objekte

user.address.city wird zu einer eigenen Spalte.

Array-Werte

tags.0, tags.1 – am breitesten, verliert nichts.

Ungleiche Zeilen

Fehlende Werte bleiben leere Zellen.

JSON-Eingabe

Eine .json-Datei ablegen

Wird in diesem Tab gelesen. Nichts wird hochgeladen.

CSV-Ausgabe

Trennzeichen

Der Download trägt ein UTF-8-BOM, damit Excel unter Windows ein „ä“ nicht als Windows-1252 liest. Die Kopieren-Schaltfläche gibt Ihnen den Text ohne BOM.

So funktioniert es

  1. Fügen Sie ein Array von Objekten ein

    Das ist die Form, die eine Tabelle will. Ein einzelnes Objekt wird zu einer Zeile, und ein Objekt, das ein Array umhüllt – der übliche API-Umschlag `{ "data": [...] }` –, wird für Sie ausgepackt, mit einem Hinweis, der das sagt.

  2. Entscheiden Sie, wie Verschachtelung abgeflacht wird

    Punktpfade geben `user.address.city` eine eigene Spalte, was Sie wollen, wenn die Tabelle gefiltert oder pivotiert werden soll. Nur erste Ebene behält `user.address` als eine Zelle mit JSON darin, was kleiner und umkehrbar ist.

  3. Entscheiden Sie, was mit Arrays geschieht

    Je eine Spalte (`tags.0`, `tags.1`) verliert nichts, verbreitert die Tabelle aber bis zum längsten Array im Dokument. Verbunden schreibt `a; b; c` in eine Zelle und liest sich gut. Als JSON behält die Klammern, damit ein späterer Schritt es wieder parsen kann.

  4. Prüfen Sie die Spaltentypen in der Vorschau

    Jede Spaltenüberschrift trägt den Typ, den die Werte tatsächlich hatten, und, wenn er in manchen Datensätzen fehlte, eine Zählung vorhanden/gesamt. Eine Spalte vom Typ `mixed` ist meist die Stelle, an der der Export Ihnen später Ärger macht.

  5. Laden Sie CSV herunter, oder kopieren Sie TSV

    Der CSV-Download hat ein UTF-8-BOM vorangestellt, damit Excel unter Windows Umlaute korrekt öffnet. Wenn Sie in eine Tabelle einfügen, statt eine Datei zu öffnen, wechseln Sie zu TSV und verwenden Sie die Kopierschaltfläche.

Häufige Fragen

Warum werden Umlaute in Excel als ä angezeigt?

Weil die Datei ohne das BOM gespeichert wurde – Excel unter Windows rät bei einer nackten UTF-8-CSV nach wie vor auf Windows-1252, und aus „ä“ wird „ä“, aus „ß“ wird „ß“. Die Download-Schaltfläche hier fügt eines hinzu; die Kopierschaltfläche tut das absichtlich nicht, weil ein in einen Texteditor eingefügtes BOM als verirrtes Zeichen auftaucht.

Kann es auch zurück konvertieren, CSV nach JSON?

Nicht auf dieser Seite – sie geht nur in eine Richtung. Und der Weg ist im Allgemeinen verlustbehaftet: Spaltennamen mit Punkten lassen sich wieder zu Objekten aufbauen, aber ein verbundenes Array ist von einem String, der zufällig ein Semikolon enthielt, nicht zu unterscheiden.

Was geschieht mit Datensätzen, die unterschiedliche Schlüssel haben?

Das ist die Einstellung „Ungleichmäßige Zeilen“. Alle Schlüssel behält alle und lässt Zellen leer, Gemeinsame Schlüssel lässt jede Spalte weg, die nicht in jedem Datensatz vorkommt, und Schlüssel der ersten Zeile behandelt Datensatz eins als Schema und ignoriert den Rest stillschweigend. Das Erste ist der sichere Standard; das Zweite wollen Sie, wenn ein nachgelagerter Importer ungleichmäßige Dateien ablehnt.

Sind große Zahlen sicher?

Geparst wird mit dem Browser, also sind Zahlen jenseits von 2^53 schon gerundet, bevor die Tabelle gebaut wird – und eine Tabellenkalkulation rundet sie beim Öffnen noch einmal. Lange IDs gehören als Strings ins JSON, und selbst dann formatiert Excel sie womöglich um; ein vorangestellter Apostroph in der Tabelle ist die übliche Abwehr.

Eingabe aus

Danach

Diese Tools nehmen an, was dieses hier erzeugt, das Ergebnis kann also direkt weiter.