JSON in CSV umwandeln: Methoden, Tools und Code-Beispiele
JSON in CSV umwandeln: Schnelle Methoden
Die Umwandlung von JSON in CSV ist eine der häufigsten Datentransformationsaufgaben. Ob Sie API-Daten in Excel analysieren, Datenbankeinträge für einen Bericht exportieren oder Trainingsdaten für maschinelles Lernen vorbereiten möchten - hier sind die schnellsten Methoden:
Methode | Geeignet für | Kenntnisstand |
|---|---|---|
Schnelle Einzelkonvertierungen | Kein Programmieren erforderlich | |
Python (pandas) | Große Datensätze, Automatisierung | Grundlegendes Python |
JavaScript (json2csv) | Node.js-Projekte, API-Pipelines | Grundlegendes JavaScript |
Kommandozeile (jq + miller) | Shell-Scripting, schnelle Transformationen | CLI-Kenntnisse |
Excel Power Query | Nicht-technische Benutzer | Kein Programmieren erforderlich |
Methode 1: Kostenloser Online-Konverter (kein Code)
Der schnellste Weg, JSON in CSV umzuwandeln, ist der kostenlose JSON-zu-CSV-Konverter von Qodex:
JSON-Daten einfügen oder eine .json-Datei hochladen
Das Tool erkennt die Struktur automatisch und verflacht verschachtelte Objekte
Die resultierende CSV-Datei herunterladen
Diese Methode eignet sich am besten für schnelle Einzelkonvertierungen kleiner bis mittlerer Datensätze. Kein Konto erforderlich, keine Datenspeicherung auf Servern.
Für die umgekehrte Konvertierung verwenden Sie den CSV-zu-JSON-Konverter. Einen tieferen Vergleich dieser Formate finden Sie in unserem CSV-vs-JSON-Vergleich.
Methode 2: Python mit pandas
Die pandas-Bibliothek von Python ist die beliebteste Wahl für die programmatische JSON-zu-CSV-Konvertierung, insbesondere bei großen Datensätzen oder automatisierten Pipelines:
import pandas as pd import json# Einfaches flaches JSON-Array data = [ {"name": "Alice", "email": "alice@example.com", "age": 30}, {"name": "Bob", "email": "bob@example.com", "age": 25} ] df = pd.DataFrame(data) df.to_csv("output.csv", index=False)
# Aus einer JSON-Datei df = pd.read_json("data.json") df.to_csv("output.csv", index=False)
# Verschachteltes JSON, zuerst verflachen with open("nested.json") as f: data = json.load(f) df = pd.json_normalize(data) # Verflacht verschachtelte Objekte df.to_csv("output.csv", index=False)
Wichtige Funktion: pd.json_normalize() behandelt verschachteltes JSON, indem es dieses in Punkt-Notation-Spalten verflacht (z. B. address.city, address.zip). Dies ist unverzichtbar für die Konvertierung realer API-Antworten, die selten flach strukturiert sind.
Methode 3: JavaScript mit json2csv
Für Node.js-Projekte oder in JavaScript aufgebaute Datenpipelines:
const { Parser } = require('json2csv');const data = [ { name: "Alice", email: "alice@example.com", age: 30 }, { name: "Bob", email: "bob@example.com", age: 25 } ];
// Grundlegende Konvertierung const parser = new Parser(); const csv = parser.parse(data); console.log(csv);
// Bei verschachtelten Daten Verflachung angeben const { Parser } = require('json2csv'); const opts = { fields: ['name', 'address.city', 'address.zip'], unwind: ['orders'], // Arrays in mehrere Zeilen auffalten }; const parser = new Parser(opts); const csv = parser.parse(nestedData);
Die Bibliothek json2csv behandelt die meisten gängigen JSON-Strukturen, einschließlich verschachtelter Objekte, Arrays und gemischter Typen. Installation mit npm install json2csv.
Methode 4: Kommandozeile
Für Shell-Scripting und schnelle Einzeiler kombinieren Sie jq (JSON-Prozessor) mit Standardtools:
# Verwendung von jq zum Konvertieren eines flachen JSON-Arrays in CSV cat data.json | jq -r ' (.[0] | keys_unsorted) as $keys | ($keys | @csv), (.[] | [.[$keys[]]] | @csv) ' > output.csv# Verwendung von miller (mlr), speziell für Formatkonvertierungen entwickelt mlr --json2csv cat data.json > output.csv
# Verwendung eines Python-Einzeilers python3 -c "import pandas as pd; pd.read_json('data.json').to_csv('output.csv', index=False)"
Miller (mlr) ist besonders nützlich für Datenformatkonvertierungen. Installation mit brew install miller (macOS) oder apt install miller (Ubuntu).
Umgang mit verschachteltem JSON
Reales JSON aus API-Endpunkten ist selten flach. So behandeln Sie häufige verschachtelte Strukturen:
Verschachtelte Objekte zu Punkt-Notation-Spalten
// Eingabe-JSON {"name": "Alice", "address": {"city": "NYC", "zip": "10001"}}
// Ausgabe-CSV name,address.city,address.zip Alice,NYC,10001
Arrays zu mehreren Zeilen oder durch Trennzeichen getrennte Zeichenketten
// Eingabe-JSON {"name": "Alice", "tags": ["admin", "editor"]}// Option A: Mehrere Zeilen (auffalten) name,tags Alice,admin Alice,editor
// Option B: Durch Trennzeichen getrennte Zeichenkette name,tags Alice,"admin;editor"
Gemischte Verschachtelung: Verflachen und Auffalten
Für tief verschachteltes JSON verwenden Sie einen zweistufigen Ansatz: Zuerst Objekte mit json_normalize() verflachen, dann Arrays in separate Zeilen auffalten. So bleiben alle Daten erhalten und es entsteht eine gültige tabellarische Struktur.
Das Verständnis der strukturellen Unterschiede zwischen diesen Formaten hilft Ihnen, den richtigen Konvertierungsansatz zu wählen. Einen tieferen Einblick in die Kompromisse finden Sie in unserem CSV-vs-JSON-Vergleich.
Häufig gestellte Fragen
Kann ich verschachteltes JSON in CSV umwandeln?
Ja, aber verschachteltes JSON muss zunächst verflacht werden. Verschachtelte Objekte werden typischerweise in Punkt-Notation-Spaltennamen umgewandelt (z. B. address.city), und Arrays können entweder in mehrere Zeilen aufgefächert oder als durch Trennzeichen getrennte Zeichenketten verbunden werden. Pythons pandas.json_normalize() und die Node.js-Bibliothek json2csv verarbeiten die meisten Verschachtelungsmuster automatisch. Für schnelle Konvertierungen verarbeitet der JSON-zu-CSV-Konverter von Qodex verschachtelte Strukturen automatisch.
Welche Daten gehen bei der Konvertierung von JSON in CSV verloren?
CSV kann keine Datentypen darstellen (alles wird zu Text), keine verschachtelten Strukturen (verflacht zu Punkt-Notation oder mehreren Zeilen), keine Unterscheidung zwischen null und leerer Zeichenkette sowie keine booleschen Werte (werden zu den Zeichenketten "true"/"false"). Wenn Sie diese Unterscheidungen beibehalten müssen, sollten Sie eine JSON-Kopie zusammen mit der CSV-Datei aufbewahren oder ein Format verwenden, das Typen unterstützt, wie Parquet oder NDJSON.
Wie wandle ich eine große JSON-Datei in CSV um?
Bei großen Dateien (100 MB+) sollten Sie es vermeiden, die gesamte Datei in den Speicher zu laden. Verwenden Sie Streaming-Ansätze: Pythons ijson-Bibliothek für inkrementelles Parsen oder verarbeiten Sie NDJSON (ein JSON-Objekt pro Zeile) mit zeilenweisem Lesen. Für sehr große Datensätze können Tools wie Apache Spark oder DuckDB JSON effizient und speicherschonend in CSV umwandeln.
Wie wandle ich JSON-API-Antworten in CSV um?
Die meisten API-Antworten geben JSON-Arrays von Objekten zurück, die direkt auf CSV-Zeilen abgebildet werden. Verwenden Sie die requests-Bibliothek von Python zum Abrufen der Daten und pandas zur Konvertierung: pd.DataFrame(response.json()).to_csv('output.csv'). Bei paginierten APIs sammeln Sie alle Seiten in einer Liste, bevor Sie konvertieren. Für API-Testing-Workflows kann Qodex.ai Testergebnisse direkt in CSV exportieren.
Was ist der beste JSON-zu-CSV-Konverter?
Für schnelle, codefreie Konvertierungen: Qodex JSON-zu-CSV-Konverter (kostenlos, kein Konto erforderlich). Für programmatische Konvertierung in Python: pandas mit json_normalize(). Für JavaScript/Node.js: das npm-Paket json2csv. Für die Kommandozeile: miller (mlr --json2csv). Wählen Sie je nach Anwendungsfall: Einzelkonvertierung oder automatisiert, kleine oder große Dateien, flaches oder verschachteltes JSON.
Kann ich CSV zurück in JSON umwandeln?
Ja. Die umgekehrte Konvertierung ist unkompliziert für flache Daten - jede CSV-Zeile wird zu einem JSON-Objekt mit Spaltenüberschriften als Schlüssel. Verwenden Sie den CSV-zu-JSON-Konverter von Qodex für schnelle Konvertierungen oder pandas.read_csv('data.csv').to_json() in Python. Beachten Sie, dass die CSV-zu-JSON-Konvertierung immer flache Objekte erzeugt. Wenn Sie verschachtelte Strukturen benötigen, müssen Sie eine eigene Transformationslogik schreiben.
Discover, Test, & Secure your APIs 10x Faster than before
Auto-discover every endpoint, generate functional & security tests (OWASP Top 10), auto-heal as code changes, and run in CI/CD - no code needed.
Related Blogs





