CSV ↔ JSON-Konverter
CSV direkt im Browser in JSON umwandeln oder JSON in CSV.
So funktioniert es
Fügen Sie CSV ein und klicken Sie auf „CSV → JSON“, um ein Array von Objekten zu erhalten, eines pro Zeile, mit den Schlüsseln aus der Kopfzeile. Fügen Sie ein JSON-Array von Objekten ein und klicken Sie auf „JSON → CSV“, um wieder eine Tabelle zu erhalten; ihre Kopfzeile besteht aus allen vorkommenden Schlüsseln, in der Reihenfolge ihres ersten Auftretens. Das Trennzeichen kann ein Komma, ein Semikolon oder ein Tabulator sein und gilt in beide Richtungen. Dateien aus Ländern, in denen das Komma als Dezimaltrennzeichen dient, sind oft durch Semikolons getrennt: Wählen Sie dafür „Semikolon“, sonst wird jede Zeile als ein einziges Feld gelesen oder an ihren Dezimalkommas aufgeteilt.
Ein Feld, das das Trennzeichen, ein Anführungszeichen oder einen Zeilenumbruch enthält, muss in doppelte Anführungszeichen gesetzt werden, und ein Anführungszeichen darin wird doppelt geschrieben: "She said ""hi""" wird als She said "hi" gelesen. Leerzeilen werden übersprungen, die Kopfzeile ist also die erste Zeile mit Inhalt; fehlende Zellen werden zu leeren Zeichenketten, und Zellen jenseits der letzten Spaltenüberschrift werden verworfen. Eine leere Spaltenüberschrift wird zu column_ plus der Position der Spalte, etwa column_3, und eine wiederholte erhält das erste freie Suffix (name, name_2), sodass keine Spalte eine andere überschreibt. Ein Anführungszeichen, das nie geschlossen wird, wird als ungültiges CSV gemeldet.
Jeder CSV-Wert wird zu einer JSON-Zeichenkette, auch Zahlen sowie true oder false: CSV kennt keine Typen, also rät der Konverter nicht. Genau deshalb bleiben führende Nullen (007, Postleitzahlen, Telefonnummern) und lange Kennungen unversehrt; wandeln Sie die benötigten Felder in Ihrem eigenen Code in Zahlen um. In der Gegenrichtung werden Zahlen sowie true oder false unverändert geschrieben, null wird zu einer leeren Zelle, und ein verschachteltes Objekt oder Array wird als JSON-Text in seine Zelle geschrieben.
„JSON → CSV“ akzeptiert ein Array von Objekten oder ein einzelnes Objekt, das zu einer Zeile wird. Ein Array aus einfachen Werten ergibt eine einzige Spalte namens value. Zeilen werden durch Zeilenumbrüche getrennt, und eine Zelle wird nur dann in Anführungszeichen gesetzt, wenn es nötig ist. Alles läuft in Ihrem Browser; nichts wird hochgeladen.
Beispiel
Die Kopfzeile liefert die JSON-Eigenschaftsnamen. Aus den beiden Datenzeilen werden zwei Objekte.
name,email / Ana,[email protected][{"name": "Ana", "email": "[email protected]"}]id / 007"id": "007": Die führenden Nullen bleiben erhalten, weil Werte als Text behandelt werden."Lisbon, Portugal" in einem FeldBleibt ein einziger Wert; ohne die Anführungszeichen würde er auf zwei Spalten aufgeteilt.name;price / Pão;1,20 mit Semikolon[{"name": "Pão", "price": "1,20"}]. Ist stattdessen „Komma“ gewählt, wird die Kopfzeile zu einem einzigen Feld, name;price, und die Zeile wird als Pão;1 gelesen: Die 20 landet in einer zusätzlichen Zelle und wird verworfen.[{"a":1,"tags":["x","y"]}] → CSVa,tags und dann 1,"[""x"",""y""]": Das Array wird als JSON-Text geschrieben und in Anführungszeichen gesetzt, weil es Anführungszeichen und ein Komma enthält.
Häufige Fragen
Warum haben meine Kennungen ihre führenden Nullen verloren?
Nicht in diesem Konverter: Er behält jeden CSV-Wert als Text, 007 bleibt also 007. Die Nullen gehen meist schon vorher verloren, wenn die Datei in einer Tabellenkalkulation geöffnet und gespeichert wird, die 007 als die Zahl 7 liest. Behandeln Sie Kennungen, Postleitzahlen und Telefonnummern durchgehend als Text.
Warum verwenden manche CSV-Dateien Semikolons?
Weil in weiten Teilen Europas und Südamerikas das Komma das Dezimaltrennzeichen ist und deshalb nicht auch die Felder trennen kann. Solche Exporte verwenden stattdessen ein Semikolon — dasselbe Format mit einem anderen Trennzeichen — und darum sieht eine Datei, die an einem Ort sauber öffnet, anderswo wie eine einzige Spalte aus. Wählen Sie vor dem Konvertieren „Semikolon“.
Warum sind die Zahlen im JSON Zeichenketten?
Weil CSV nicht angibt, welche Werte Zahlen sind. 007, 1e3 oder eine 20-stellige Kennung als Zahl zu lesen, würde sie verändern; daher überlässt der Konverter diese Entscheidung Ihnen.
Kann der Konverter verschachteltes JSON umwandeln?
Teilweise. Jedes Objekt wird zu einer Zeile und jeder Schlüssel der obersten Ebene zu einer Spalte; verschachtelte Objekte und Arrays werden als JSON-Text in ihre Zelle geschrieben, statt auf zusätzliche Spalten verteilt zu werden.
Was passiert mit einem Anführungszeichen innerhalb eines Feldes?
Es wird verdoppelt, und das Feld wird in Anführungszeichen gesetzt, wie CSV es verlangt: Aus She said "hi" wird "She said ""hi""".