CSV beschreibt Datensätze und Spalten, während JSON Objekte, Listen und mehrere Werttypen darstellen kann. Dieser Konverter verbindet eine CSV-Tabelle mit Kopfzeile mit einem JSON-Array flacher Objekte. Er eignet sich für API-Beispiele, Anwendungsexporte und den Austausch zwischen Tabellenkalkulation und Skript. Beide Richtungen garantieren keinen identischen Rundlauf: CSV unterscheidet nicht von selbst zwischen null, fehlendem Feld und leerer Zeichenfolge oder zwischen einer Zahl und ähnlich aussehendem Text. Solche Unterschiede benötigen ein ausdrücklich vereinbartes Schema außerhalb der bloßen Feldtrennung, wenn sie für den Empfänger erhalten bleiben sollen.
Wähle Komma, Semikolon oder Tabulator ausdrücklich aus. Die Einstellung dient in einer Richtung zum Lesen und in der anderen zum Schreiben von CSV. Diese Oberfläche bietet weder automatische Erkennung noch senkrechten Strich. CSV in JSON behandelt den ersten logischen Datensatz immer als Kopfzeile und erzeugt je weiterer Zeile ein Objekt. Äußere Leerzeichen der Titel werden entfernt. Leere oder wiederholte Namen erhalten Ersatznamen, damit sämtliche Spalten erhalten bleiben. Zusätzliche Felder langer Zeilen bekommen ebenfalls Eigenschaften, statt durch Namenskollisionen verloren zu gehen.
Jeder aus CSV gelesene Wert bleibt eine JSON-Zeichenfolge. Ein Betrag 12,50 wird nicht als Zahl erraten, und die Referenz 001 behält ihre führenden Nullen. Zitierte Felder können Trennzeichen, verdoppelte Anführungszeichen und mehrere Zeilen enthalten. Ein nicht geschlossenes Anführungszeichen blockiert die Konvertierung. Für JSON in CSV wird ein nicht leeres Array von Objekten verlangt, deren Zellen Zeichenfolgen, endliche Zahlen, boolesche Werte oder null sind. Einzelobjekte, Zahlenlisten und verschachtelte Zellen bilden hier keine unterstützte flache Tabelle.
Die in den Objekten vorhandenen Eigenschaften bilden die exportierten Spalten. Fehlende Eigenschaften und null ergeben leere Zellen. Boolesche Werte werden zu true oder false als Text, Zahlen verwenden ihre JavaScript-Textdarstellung. Verschachtelte Objekte und Arrays werden abgelehnt statt in unbrauchbaren Text verwandelt. Verflache diese vorher, wenn du ausdrückliche Pfadspalten benötigst. Die JSON-Ausgabe ist eingerückt, CSV wird entsprechend dem gewählten Trennzeichen zitiert. Dateiimporte sind auf 5 MiB begrenzt und lesen UTF-8. Formatierungen und Arbeitsmappen-Metadaten werden nicht erhalten.