Ratgeber · Praxis & Code
CSV zu JSON: Konverter, Excel und Skripte im Vergleich
Für die Umwandlung von CSV in JSON gibt es mehrere Wege. Welcher passt, hängt weniger vom Werkzeug ab als von Ihren Daten, der Häufigkeit und der Frage, wohin die Datei dabei gelangt.
Eine einzelne CSV-Datei umzuwandeln ist eine Sache von Sekunden. Sobald die Umwandlung regelmäßig anfällt, die Dateien groß werden oder personenbezogene Daten enthalten, lohnt der Blick auf die Alternativen. Dieser Vergleich nennt Kriterien statt Anbieter: Er bewertet Wege, nicht einzelne Websites.
Kriterium 1: Wo läuft die Verarbeitung?
Ein Web-Werkzeug rechnet entweder lokal im Browser oder schickt die Datei an einen Server. Für Testdaten ist das gleichgültig. Bei Kundenlisten, Personaldaten oder Umsätzen entscheidet es darüber, ob Ihre Daten Ihr Gerät verlassen. Das lässt sich prüfen: Im Netzwerk-Tab der Entwicklerwerkzeuge sehen Sie, ob beim Umwandeln eine Anfrage mit Ihren Daten abgeht. Mehr dazu im Ratgeber CSV umwandeln und Datenschutz. Skripte auf dem eigenen Rechner verarbeiten ohnehin lokal.
Kriterium 2: Welche Formate und Optionen gibt es?
Prüfen Sie, ob ein Weg die Dinge beherrscht, die in Ihren Dateien vorkommen:
- Trennzeichen außer Komma, besonders das Semikolon aus deutschem Excel
- ein BOM am Dateianfang und andere Codierungen als UTF-8
- Typerkennung, die sich abschalten lässt, damit führende Nullen erhalten bleiben
- Ausgabe als Array von Objekten, als Array von Arrays oder als JSON Lines
- Verschachtelung aus Spaltennamen wie
adresse.ort
Kriterium 3: Grenzen
Browser-Werkzeuge sind an den Arbeitsspeicher des Geräts gebunden. Wie groß die Datei sein darf, hängt von Browser und Gerät ab. Skripte mit zeilenweiser Verarbeitung kommen auch mit Dateien zurecht, die nicht komplett in den Speicher passen.
Die Wege im Überblick
| Weg | Aufwand | Wiederholbar | Große Dateien | Typische Stärke |
|---|---|---|---|---|
| Konverter im Browser | Sehr gering | Kaum | Begrenzt durch Gerät | Einmalige Umwandlung mit Optionen |
| Tabellenkalkulation (z. B. Power Query in Excel) | Gering bis mittel | Ja, als gespeicherte Abfrage | Begrenzt | Wer ohnehin in Excel arbeitet |
| Python mit pandas oder csv-Modul | Mittel | Sehr gut | Gut mit Streaming | Pipelines und Automatisierung |
| Node.js mit PapaParse | Mittel | Sehr gut | Gut mit Streaming | Web-Anwendungen |
| Kommandozeile (Miller, csvkit, PowerShell) | Gering bis mittel | Gut | Je nach Werkzeug | Schnelle Skripte ohne Programmierung |
Beispiele für Skripte
Python mit pandas:
import pandas as pd
df = pd.read_csv("kunden.csv", sep=";", encoding="utf-8-sig", dtype=str)
df.to_json("kunden.json", orient="records", force_ascii=False, indent=2)
encoding="utf-8-sig" entfernt das BOM, dtype=str verhindert, dass pandas führende Nullen durch Zahlen ersetzt, und force_ascii=False lässt Umlaute im Klartext stehen.
Node.js mit PapaParse:
import fs from "node:fs";
import Papa from "papaparse";
const csv = fs.readFileSync("kunden.csv", "utf8");
const ergebnis = Papa.parse(csv, { header: true, skipEmptyLines: true });
fs.writeFileSync("kunden.json", JSON.stringify(ergebnis.data, null, 2));
Ohne dynamicTyping bleiben alle Werte Text. Schalten Sie die Option ein, werden Zahlen und Wahrheitswerte erkannt, dann aber auch 01067 zu 1067.
Kommandozeile: Mit Miller genügt mlr --icsv --ifs ";" --ojson cat kunden.csv, mit csvkit csvjson -d ";" kunden.csv, in PowerShell Import-Csv -Delimiter ";" kunden.csv | ConvertTo-Json. Beachten Sie, dass diese Werkzeuge Zahlen unterschiedlich behandeln, zum Beispiel erkennt Miller sie automatisch.
Welcher Weg passt?
- Einmalig, mit Optionen: Konverter im Browser, wie auf der Startseite.
- Regelmäßig, gleicher Aufbau: Skript mit pandas, csv-Modul oder PapaParse.
- Sehr große Datei: zeilenweise lesen und als JSON Lines schreiben, siehe JSON Lines (NDJSON).
- Sensible Daten: lokale Verarbeitung, entweder im Browser mit nachweislich fehlender Anfrage oder auf dem eigenen Rechner.
Worauf es ankommt
Entscheiden Sie nach Ihren Daten: Wo darf die Datei hin, welche Besonderheiten hat sie, wie oft fällt die Umwandlung an. Für die Besonderheiten deutscher Excel-Dateien lesen Sie Excel-CSV mit Semikolon in JSON umwandeln.
FAQ
Häufige Fragen
Welcher Weg ist der schnellste für eine einzelne Datei?
Ein Konverter im Browser, weil nichts zu installieren ist. Sie fügen die Daten ein, prüfen die Optionen und kopieren das Ergebnis. Für regelmäßige oder sehr große Umwandlungen lohnt sich ein Skript.
Woran erkenne ich, ob ein Online-Konverter meine Daten hochlädt?
Öffnen Sie die Entwicklerwerkzeuge des Browsers (Tab Netzwerk), und wandeln Sie eine Beispieldatei um. Entsteht dabei eine Anfrage mit Ihren Daten, läuft die Verarbeitung auf einem Server. Bleibt es ruhig, rechnet die Seite lokal. Die Datenschutzerklärung des Anbieters sollte dazu eine Aussage enthalten.
Was tun bei Dateien, die nicht in den Arbeitsspeicher passen?
Dann ist ein Werkzeug sinnvoll, das die Datei zeilenweise liest und schreibt, etwa ein Skript mit dem csv-Modul von Python, PapaParse im Streaming-Modus oder Miller auf der Kommandozeile. JSON Lines als Ziel passt dazu besonders gut.
Quellen