JSON zu CSV/ JSON-Array → CSV-Datei

JSON-Arrays mit einem Klick in CSV konvertieren — benutzerdefinierte Trennzeichen, Verschachtelung auflösen, direkter Download.

Trennzeichen
JSON
CSV

Hat dieses Tool Ihr Problem gelöst?

Code-Beispiele

JavaScript / Node.js
// Using json2csv npm package
import { Parser } from 'json2csv';

const data = [
  { name: 'Alice', age: 30, city: 'Beijing' },
  { name: 'Bob',   age: 25, city: 'Shanghai' },
];

const parser = new Parser({ fields: ['name', 'age', 'city'] });
const csv = parser.parse(data);
// name,age,city
// Alice,30,Beijing
// Bob,25,Shanghai

// Built-in (no deps)
const toCsv = (arr) => {
  const keys = Object.keys(arr[0]);
  const rows = arr.map(r => keys.map(k =>
    JSON.stringify(r[k] ?? '')).join(','));
  return [keys.join(','), ...rows].join('\n');
};
Python (pandas)
import pandas as pd
import json

# From JSON string
json_str = '[{"name":"Alice","age":30},{"name":"Bob","age":25}]'
df = pd.read_json(json_str)
df.to_csv('output.csv', index=False)

# From nested JSON (flatten)
from pandas import json_normalize
data = [{"user": {"name": "Alice"}, "score": 100}]
df = json_normalize(data)
# Columns: user.name, score
df.to_csv('flat.csv', index=False)

# Custom delimiter
df.to_csv('output.csv', sep=';', index=False)
Go
import (
  "encoding/csv"
  "encoding/json"
  "os"
)

type Row struct {
  Name string `json:"name"`
  Age  int    `json:"age"`
}

func main() {
  data := []Row{{"Alice", 30}, {"Bob", 25}}
  f, _ := os.Create("output.csv")
  w := csv.NewWriter(f)
  w.Write([]string{"name", "age"})
  for _, r := range data {
    w.Write([]string{r.Name, fmt.Sprint(r.Age)})
  }
  w.Flush()
}
Shell (jq + awk)
# jq: extract fields as TSV
cat data.json | jq -r '
  .[] | [.name, .age, .city] | @tsv
' > output.tsv

# With headers
cat data.json | jq -r '
  ["name","age","city"],
  (.[] | [.name, .age, .city])
  | @csv
' > output.csv

# Using Miller (mlr)
mlr --json --ocsv cat data.json > output.csv

Häufig gestellte Fragen

Was sind gängige Anwendungsfälle für JSON zu CSV?
JSON ist das Standard-API-Datenformat; CSV ist das Format für Tabellenkalkulationen (Excel, Google Sheets) und Datenanalysetools (pandas, R). Gängige Anwendungsfälle: API-Daten nach Excel exportieren, Datenbankabfrageergebnisse in Datenpipelines importieren.
Wie werden verschachtelte JSON-Objekte behandelt?
Zwei Ansätze: 1) Abflachen — user.name und user.age werden zu zwei Spalten. 2) Serialisieren — das verschachtelte Objekt wird in eine JSON-Zeichenkette umgewandelt. Die Option 'Verschachtelte Objekte abflachen' verwendet Punkt-Notation.
Wie werden Sonderzeichen in CSV behandelt?
RFC 4180 erfordert: Felder mit Kommas, Zeilenumbrüchen oder doppelten Anführungszeichen müssen in doppelte Anführungszeichen eingeschlossen werden. Dieses Tool behandelt diese Fälle automatisch.
Wann sollte man Semikolons statt Kommas verwenden?
In einigen europäischen Ländern (Deutschland, Frankreich, Niederlande) dienen Kommas als Dezimaltrennzeichen, daher verwendet Excel dort standardmäßig Semikolons (;) als CSV-Trennzeichen.
Wie konvertiert man JSON zu CSV in Python?
Mit der Standardbibliothek: import json, csv; data = json.load(open('data.json')); writer = csv.DictWriter(open('out.csv', 'w'), fieldnames=data[0].keys()); writer.writeheader(); writer.writerows(data). Mit pandas ebenfalls möglich.
Können auch andere Formate als JSON-Arrays konvertiert werden?
Unterstützt: JSON-Arrays (am häufigsten), ein einzelnes JSON-Objekt (eine Ausgabezeile), ein Objekt mit Array-Feld (das erste Array wird extrahiert). Nicht unterstützt: tief verschachtelte Arrays, unregelmäßige Arrays.