Command Palette

Search for a command to run...

JSON zu CSV: Verwandeln Sie eine API-Antwort in eine Tabellenkalkulation, die Personen öffnen können

JSON zu CSV: Verwandeln Sie eine API-Antwort in eine Tabellenkalkulation, die Personen öffnen können

T
Toolz Team
|Aug 23, 2026|13 min lesen

Teil der Sammlung Datenwerkzeuge

Die Hälfte meiner Arbeit an jedem SaaS-Produkt besteht darin, Daten aus dem System in die Hände von jemandem zu bekommen, der keinen Code schreibt. Ein Gründer möchte den Monat und #39;s-Anmeldungen in einer Tabelle. Ein Support-Lead möchte Tickets in Excel sortieren. Ein Buchhalter möchte die Bestellungen als .csv Sie können schwenken Die Daten leben als JSON, denn das gibt die API zurück, und jedes Mal ist die Aufgabe die gleiche: dieses Array von Objekten in Spalten verwandeln und Zeilen kann ein Mensch öffnen Ich hatte es satt, Wegwerfskripte dafür zu schreiben, genau deshalb die Toolz JSON-zu-CSV-Konverter Existiert Dieser Ratgeber ist, wie ich über jene Umwandlung denke, einschließlich der Teile, die die Menschen auf den Kopf stellen.

tl; dr: Ein JSON-zu-CSV-Konverter nimmt ein Array von Objekten und schreibt es als kommagetrennte Zeilen, eine Spalte pro Eigenschaft, so dass eine Tabellenkalkulation es öffnen kann Die Hardparts sind Datensätze mit verschiedenen Feldern, verschachtelten Objekten und Werten, die Kommas enthalten Ein guter Konverter baut den Header aus der Vereinigung aller Schlüssel auf, kann verschachtelte Objekte in Punktnotationsspalten abflachen und entweicht Felder pro RFC 4180. Das Toolz-Tool erledigt alle drei Client-Seiten und ermöglicht Ihnen die Auswahl der Endungen der Trennzeichen- und CRLF-Zeilen, sodass die Datei in Excel sauber geöffnet wird.

Ich baue auf Laravel und React auf, also ist JSON mein natives Format und CSV die Verkehrssprache, in die ich exportiere. Das interessante Engineering ist nicht der glückliche Weg, auf dem jedes Objekt die gleichen drei Schlüssel hat; Es ist die chaotische Realität der Produktionsdaten, und dort tun die meisten Konverter stillschweigend das Falsche.

Was ist ein JSON-zu-CSV-Konverter?

Ein JSON-zu-CSV-Konverter liest ein JSON-Array von Objekten und erzeugt eine Tabelle: die Eigenschaftsnamen werden zur Header-Zeile, und jedes Objekt wird zu einer Datenzeile darunter Fügen Sie die Antwort von einem API-Endpunkt, einer Datenbankabfrage oder einem exportierten Dokument ein, und Sie erhalten eine Datei, die Sie direkt in Excel, Google Sheets oder Numbers öffnen können. Es ist die Brücke zwischen dem Format, in dem Maschinen austauschen, und dem Format, in dem die Leute tatsächlich arbeiten.

Die ideale Eingabe ist ein Array von flachen Objekten, die alle die gleichen Schlüssel teilen, denn das bildet sich perfekt auf eine rechteckige Tabelle ab Echte Daten sind selten so aufgeräumt Objekte verfehlen ein Feld, Werte verschachteln sich zwei Ebenen tief, und einige Einträge sind Arrays statt Skalare Der ganze Wert eines dedizierten Konverters ist, dass er für jeden dieser Fälle eine definierte, sinnvolle Antwort hat, anstatt einen Fehler zu werfen oder Daten zu fallen zu lassen Wenn Ihr JSON minifiziert ist oder Sie es nur zuerst inspizieren möchten, führen Sie es durch den JSON-Formater hübsch zu drucken und zu validieren, bevor Sie konvertieren.

Wie geht es mit Objekten mit verschiedenen Feldern um?

Dies ist das erste, was naive Konverter bricht, und es lohnt sich zu verstehen, weil Produktion JSON fast nie einheitliche Objekte hat Angenommen, Ihr Array hat ein Objekt mit id, name, und email, und das nächste mit id, name, und phone. Welche Spalten sollte die CSV haben?

Die richtige Antwort ist die Vereinigung jeder Taste über alle Objekte hinweg, gehalten in der Reihenfolge, in der jede Taste zuerst erscheint. Der Header wird also id, name, email, phone, und jedes Objekt, dem eine dieser Tasten fehlt, bekommt einfach eine leere Zelle in dieser Spalte Nichts wird fallen gelassen, und die Tabelle bleibt rechteckig Ein fauler Konverter, der nur die Tasten des ersten Objekts liest, würde stillschweigend die verlieren phone Spalte ganz, jede Telefonnummer mit sich nehmen Der Toolz-Konverter scannt alle Zeilen, um den Header zu erstellen, so dass sich ungleichmäßige Datensätze immer noch zu einer sauberen, vollständigen Tabelle aufreihen. Dieses eine Verhalten ist der Unterschied zwischen einem Export, dem Sie vertrauen können, und einem, der Daten leise weglässt, die niemand bemerkt, bis es zu spät ist.

Wie sieht es mit verschachtelten Objekten und Arrays aus?

JSON ist ein Baum; CSV ist ein Gitter. Wenn Sie einen in den anderen abflachen, weichen die Konverter an zweiter Stelle voneinander ab, und die richtige Wahl hängt davon ab, was Sie mit der Datei vorhaben.

Für verschachtelte Objekte haben Sie zwei vernünftige Optionen, und das Tool unterstützt beide, Mit dem Abflachen wird ein verschachteltes Objekt zu Punktnotationsspalten erweitert, so { "address": { "city": "Paris", "zip": "75001" } } wird ein address.city Spalte und eine address.zip Spalte. das ist es, was Sie wollen, wenn die verschachtelten Felder echte Daten sind, die eine Person liest und sortiert. Beim Abflachen wird das gesamte verschachtelte Objekt als kompakte JSON-Zeichenfolge in eine einzelne Zelle geschrieben, was besser ist, wenn die Struktur undurchsichtig ist und Sie es nur wörtlich bewahren müssen.

Arrays haben ihre eigene Wahl, denn es gibt keinen einzigen richtigen Weg, eine Liste in eine Zelle zu pressen Sie können das Array als JSON speichern, behalten ["a","b"] Intakt, sodass es perfekt umrundet, oder Sie können die Elemente mit einem Trennzeichen verbinden, um das für Menschen lesbarere zu erhalten a; b. Ich verwende JSON, wenn die Datei von einem Programm zurückgelesen wird und das Join-Format, wenn eine Person das Publikum ist und die Lesbarkeit gewinnt Die folgende Tabelle fasst die Entscheidungen zusammen.

Eingabeform Einflachen Abflachen
{"user":{"name":"Ada"}} Spalte user.name = Ada Spalte user = {"name":"Ada"}
{"tags":["x","y"]} (Arrays als JSON) Spalte tags = ["x","y"] Spalte tags = ["x","y"]
{"tags":["x","y"]} (Arrays verbunden) Spalte tags = x; y Spalte tags = x; y
Objekt fehlt ein Schlüssel Leere Zelle in dieser Spalte Leere Zelle in dieser Spalte

Warum müssen Kommas und Zitate entkommen?

Das ist die Regel, die ignoriert eine Datei erzeugt, die so lange gut aussieht, bis sie jemand öffnet und die Spalten alle falsch sind CSV benutzt das Komma, um Felder zu trennen, also was passiert, wenn ein Wert ein Komma enthält? oder ein doppeltes Zitat? oder ein Zeilenumbruch aus einer mehrzeiligen Notiz?

RFC 4180„Das, was CSV einem Standard am nächsten kommt, beantwortet dies genau: Jedes Feld, das den Trennzeichen, ein doppeltes Zitat oder einen Zeilenumbruch enthält, muss in doppelte Anführungszeichen gewickelt werden, und jedes doppelte Anführungszeichen innerhalb dieses Feldes muss verdoppelt werden. Also der Wert Baker, Smith & Co. Geschrieben wird als "Baker, Smith & Co.", und She said "hi" wird "She said ""hi""". Der Toolz-Konverter wendet diese Regeln automatisch auf jede Zelle an, weshalb eine Adresse, ein Preis mit Tausendertrennzeichen oder ein Freitextkommentar die Auslösung in eine Tabellenkalkulation als einzelnes, intaktes Feld übersteht, anstatt in zusätzliche Spalten zu zersplittern.

Wie mache ich die Datei sauber in Excel geöffnet?

Man sollte meinen, ein CSV sei ein CSV, aber Excel unter Windows ist wählerisch in Bezug auf eine Sache, die die Leute auffängt: Zeilenenden Das richtig zu machen, ist der Unterschied zwischen einer Datei, die sich perfekt öffnet und einer, in der Zeilen zusammengeführt oder geteilt erscheinen.

Excel unter Windows erwartet, dass jede Zeile mit einem Wagenrücklauf plus einem Zeilenvorschub, dem CRLF-Paar, endet. Wenn Sie ihr eine Datei mit LF-Zeilenenden im Unix-Stil geben, kann es falsch lesen, wo Zeilen brechen, insbesondere wenn ein zitiertes Feld eine eigene neue Zeile enthält. Der Konverter ermöglicht die Auswahl von LF oder CRLF. Wählen Sie also CRLF, wenn die Zielgruppe Excel unter Windows und LF für die meisten anderen Tools ist, und für Google Sheets, das mit beiden zufrieden ist Sie können auch den Trennzeichen wählen: Komma ist die Standardeinstellung, aber Semikolon ist an europäischen Orten üblich, wo das Komma das Dezimaltrennzeichen ist und Tabulat oder Pipe praktisch sind, wenn Ihre Daten selbst die Zielvorwahl vollständig mit dem Ziel speichert und einem späteren Zielvorwahlzeichen speichert.

Ist es sicher, sensibles JSON online zu konvertieren?

Ja, weil nichts davon Ihren Browser verlässt Jeder Teil der Konvertierung, vom Parsen des JSON über das Escape jedes Feldes bis zum Zusammenfügen der Zeilen, läuft in JavaScript auf Ihrem eigenen Rechner Es gibt keinen Upload und keinen Server, also wird nichts übertragen, protokolliert oder gespeichert Öffnen Sie den Netzwerk-Tab und klicken Sie auf Konvertieren: Sie sehen keine Anfrage ausgehen, und sobald die Seite geladen hat, funktioniert das Tool mit dem getrennten Internet.

Dies ist kein untergeordnetes Detail für JSON speziell, denn JSON ist das, was API-Antworten und interne Systeme sprechen Das Array, das Sie konvertieren, könnte Benutzerdatensätze, Bestelldaten, Zugriffstoken oder alles andere enthalten, was Ihr Backend zurückgibt Ein Konverter, der Ihre Nutzlast an einen Remote-Server sendet, verwandelt eine private Antwort in eine andere & #39; s-Protokollzeile. Wenn Sie die Arbeit clientseitig erledigen, bleiben die Daten genau dort, wo sie begonnen haben. Es ist die Standardeinstellung für jedes Tool auf Toolz.dev, und wenn Sie das ausführlichere Argument dafür wollen, warum diese Architektur wichtig ist, habe ich es in der dargelegt Datenschutzleitfaden für Online-Toolsdrohen

Wo passt das in eine echte Pipeline?

Für sich genommen ist der Konverter ein Schritt, aber es ist normalerweise der letzte Hop eines längeren Flusses, und er paart sich natürlich mit einer Handvoll anderer Tools Der häufigste Roundtrip in meiner Woche ist: JSON aus einer API exportieren, bearbeiten oder filtern, in CSV konvertieren, und es jemandem geben, der in Tabellenkalkulationen lebt Wenn sie es mit Änderungen zurücksenden, wandle ich die andere Richtung mit dem um CSV-zu-JSON-Konverter, die die Datei pro RFC 4180 analysiert und Typen ableitet, damit ich wieder saubere Objekte bekomme Die beiden Tools sind bewusste Spiegel voneinander, weshalb sie sich vernetzen.

Vor der Konvertierung möchte ich die Daten oft als Raster zur Überprüfung der geistigen Gesundheit betrachten CSV-Betrachter Rendert CSV als sortierbare Tabelle, damit ich bestätigen kann, dass der Export richtig aussieht. Und wenn das Ziel überhaupt keine Tabellenkalkulation ist, sondern ein anderes System, das XML spricht, ist das XML-zu-JSON-Konverter Und seine Gegenstücke decken dieses Bein ab. Da jedes davon lokal ausgeführt wird, können Sie es ohne einen einzigen Upload in derselben privaten Datei verketten. Wenn Sie eine Reihe von Go-to-Tools für diese Art von Datengerangel zusammenstellen, meine Leitfaden für Webentwickler-Toolkit Bedeckt, wie ich über die Montage einer.

Häufig gestellte Fragen

Wie konvertiere ich JSON in CSV? Öffne das JSON-zu-CSV-KonverterFügen Sie ein JSON-Array von Objekten in das Eingabefeld ein und klicken Sie auf Konvertieren. Die Objekttasten werden zur Header-Zeile und jedes Objekt wird zu einer Datenzeile. Anschließend können Sie die CSV kopieren oder als herunterladen .csv Datei zum Öffnen in Excel oder Google Sheets Jegliche Verarbeitung geschieht in Ihrem Browser, es wird also nichts hochgeladen.

Welche JSON-Struktur erwartet der Konverter? Ideal ist ein Array von Objekten, wobei jedes Objekt zu einer Zeile wird, auch ein einzelnes Objekt wird akzeptiert und wird zu einer einreihigen Datei Werte, die keine Objekte sind, werden unter eine value Spalte, damit nichts verloren geht, und das Tool warnt Sie, wenn das passiert.

Wie geht es mit Objekten mit verschiedenen Feldern um? Der Header ist die Vereinigung jedes Schlüssels, der über alle Objekte hinweg gefunden wird, und wird in der Reihenfolge aufbewahrt, in der jede Taste zuerst erscheint. Ein Objekt, dem eine dieser Tasten fehlt, erhält einfach eine leere Zelle in dieser Spalte, sodass unebene Datensätze immer noch eine saubere, vollständige Tabelle ohne Daten erzeugen fallen gelassen.

Wie werden verschachtelte Objekte und Arrays gehandhabt? Beim Abflachen dehnt sich ein verschachteltes Objekt zu Punktnotationssäulen aus address.city; mit aus wird das Objekt als JSON-String in eine Zelle geschrieben Arrays können als JSON gespeichert werden, um sie genau zu bewahren, oder mit einem Separator für eine besser lesbare Spalte verbunden werden Sie wählen pro Konvertierung.

Warum sollte ich CRLF-Zeilen-Endungen für Excel verwenden? Microsoft Excel unter Windows erwartet am Ende jeder Zeile carage-return plus line-feed Durch die Wahl von CRLF wird vermieden, dass Zeilen beim Öffnen der Datei zusammengeführt oder falsch gelesen werden Bei den meisten anderen Tools und bei Google Sheets funktioniert LF einwandfrei.

Sind Kommas und Zitate in Werten korrekt ausgeblendet? Ja. Nach RFC 4180 wird jedes Feld, das das Trennzeichen, ein doppeltes Zitat oder einen Zeilenumbruch enthält, in doppelte Anführungszeichen gewickelt und interne Anführungszeichen verdoppelt. Dadurch bleiben Adressen, Beschreibungen und anderer freier Text als einzelnes gültiges Feld erhalten, anstatt sie spaltenübergreifend aufzuteilen.

Ist es sicher, sensibles JSON umzuwandeln? Ja. Die Konvertierung läuft vollständig in JavaScript in Ihrem Browser, keine Netzwerkanfrage trägt Ihre Daten, nichts wird protokolliert oder gespeichert, und es funktioniert offline, sobald es geladen ist JSON mit API-Schlüsseln, Benutzerdatensätzen oder internen Identifikatoren verlässt Ihren Computer nie.

Kann ich die CSV wieder in JSON umwandeln? Ja. der CSV-zu-JSON-Konverter Reversiert den Vorgang, indem die kommagetrennte Datei mit Typinferenz wieder in ein JSON-Array von Objekten analysiert wird. Durch Roundtriping können Sie Daten zwischen Tabellenkalkulationen und APIs verschieben, ohne sie von Hand neu zu schreiben.

Comments

0 comments

0/2000 characters

No comments yet. Be the first to share your thoughts!