Menü

Werkzeuge durchsuchenÄnderungsprotokoll

zum Navigieren zum ÖffnenBeschreiben Sie das Problem, nicht das Tool

Konvertieren Sie ein JSON-Array in CSV für Excel

Wählen Sie die JSON-Datei und lassen Sie Kommatrennzeichen, Formelschutz und die Excel-UTF-8-Markierung aktiviert. Jedes Objekt wird zu einer Zeile, die Vereinigung seiner Schlüssel wird zur Kopfzeile und die resultierende CSV-Datei wird in Excel geöffnet, ohne dass die Quelle hochgeladen oder nicht vertrauenswürdiger Text als Formel behandelt werden muss.

Ein JSON-Objekt, ein Array aus Objekten oder ein Array aus Arrays bis 20 MB. Die Datei wird nur in diesem Tab geparst.

Abflachen macht aus profile.city eine eigene Spalte. Arrays bleiben JSON, damit eine lange Liste nicht Tausende Spalten erzeugt.

Komma ist der CSV-Standard. Semikolon passt besser zu Regionen mit Dezimalkomma; Tabulator erzeugt eine TSV-ähnliche Datei.

Text, der mit =, +, - oder @ beginnt, erhält ein Präfix. So kann das Öffnen nicht vertrauenswürdiger Daten keine Formel ausführen.

Geschriebene Zeilen
Eine Zeile je Objekt oder innerem Array; ein einzelnes Objekt auf oberster Ebene wird zu einer Zeile.
Geschriebene Spalten
Eingabestruktur
Ausgabegröße (Bytes)
Das Wichtigste
  1. Objektschlüssel werden in der zuerst angezeigten Reihenfolge zu Spaltenüberschriften, einschließlich Schlüsseln, die erst in späteren Datensätzen erscheinen.

  2. Der UTF-8-Marker hilft älteren Excel-Versionen, Namen und Texte außerhalb des Basis-ASCII korrekt zu erkennen.

  3. Beim Formelschutz werden riskante Textzellen vorangestellt, während echte JSON-Zahlen und boolesche Werte als typisierte Werte beibehalten werden.

So funktioniert es

So wird es gemacht

  1. Lies die ausgewählte Datei im Worker als striktes UTF-8 und parse genau einen gültigen JSON-Wert. Binäre, ungültige oder nach dem Wert fortgesetzte Daten werden abgelehnt.
  2. Akzeptiere ein einzelnes Objekt als eine Zeile, ein Array aus Objekten als Datensätze oder ein Array aus Arrays als positionsbezogene Zeilen. Andere oberste Strukturen erhalten keine erfundene Tabellenspalte.
  3. Bestimme die Spalten als Vereinigung aller Schlüssel in der Reihenfolge ihres ersten Auftretens. Bei Arrays entspricht die Breite dem längsten inneren Array.
  4. Behandle verschachtelte Werte nach der Auswahl. Als JSON bleiben sie in einer Zelle; beim Abflachen werden Objektpfade wie profile.city zu eigenen Spalten, während Arrays kompakt bleiben.
  5. Schreibe null und fehlende Werte als leere Zelle, boolesche Werte und Zahlen in JSON-Schreibweise und Zeichenketten ohne Typumdeutung.
  6. Schütze auf Wunsch Text, der mit =, +, - oder @ beginnt, durch ein führendes Apostroph vor einer Auswertung als Tabellenformel.
  7. Quote Felder mit Trennzeichen, Anführungszeichen oder Zeilenumbrüchen nach RFC 4180, verdopple innere Anführungszeichen und schreibe CRLF-Zeilenenden.
  8. Füge optional die dreibyte UTF-8-Markierung hinzu und biete die vollständige CSV- oder TSV-Datei zum Download an.

Wovon es ausgeht

  • Ein Objekt auf oberster Ebene wird zu genau einer Zeile; ein Array aus Objekten zu einer Zeile je Objekt und ein Array aus Arrays zu positionsbezogenen Zeilen.
  • Verschachtelte Arrays werden nicht in zusätzliche Tabellenzeilen aufgespalten. Dafür wäre eine relationale Zuordnung nötig, die das JSON nicht vorgibt.
  • CSV kann fehlend und null nicht zuverlässig unterscheiden. Beide werden als leere Zelle geschrieben.
  • Zahlen bleiben JSON-Zahlen mit Punkt als Dezimaltrenner. Erst das Tabellenprogramm entscheidet über die Anzeige im Gebietsschema.
  • Die Formelabsicherung wird nur auf ursprüngliche Zeichenketten angewendet. Eine negative JSON-Zahl bleibt eine Zahl.
  • Eingabe und Ausgabe liegen während der Konvertierung im Arbeitsspeicher; die Eingabe ist daher auf 20 MB und die Breite auf 10.000 Spalten begrenzt.

Fragen

Warum beginnt die Excel-fähige CSV-Datei mit drei unsichtbaren Bytes?

Sie sind der UTF-8-Bytereihenfolgemarker EF BB BF. Sie enthalten keine Tabellendaten; Sie weisen Excel-Versionen, die die Kodierung nicht zuverlässig ableiten, an, Namen und anderen Nicht-ASCII-Text als UTF-8 zu dekodieren.

Bekommt jedes JSON-Objekt dieselben Excel-Spalten?

Ja. Der Header ist die Vereinigung der in allen Datensätzen gefundenen Schlüssel in der Reihenfolge, in der jeder Schlüssel zuerst erscheint. Ein Datensatz, dem einer dieser Schlüssel fehlt, erhält eine leere Zelle in dieser Spalte.

Quellen

Die vollständige Methode, das Rechenbeispiel und alle Annahmen hinter diesem Ergebnis stehen auf JSON in CSV umwandeln.