CSV-Dateien einlesen mit womodo
Zum Einlesen von CSV Daten steht in womodo ein csvReader zur Verfügung. Dieser Reader kann einfach strukturierte Daten lesen - komplexer strukturierte Daten dagegen nicht.
In womodo 7.10.1 enthält der csvReader nun einen neuen CSV-Zeilen-Parser, der auch komplexere Daten verarbeiten kann.
Beispiel für einfach strukturierte Daten:
Titel;Datum
"Das ist ein Test";1.1.2020
Der bisherige csvReader trennt die Felder einfach beim Semikolon, um die einzelnen Werte zu ermitteln.
Beispiel für komplexe Daten
"Das ist ein Test; mit Problemen";1.1.2020
Da bisher simpel beim Semikolon getrennt wird, geht das in diesem Fall schief. Das Titel-Feld wird "zerschnitten".
Auch problematisch sind bisher doppelte Anführungszeichen in den Feldern:
"Das ist ein ""Test""; mit Problemen";1.1.2020
Diese doppelten Anführungszeichen sollten zu einfachen Anführungszeichen im Feld gewandelt werden.
Neuer csv-line-parser in womodo 7.10.1
Mit dem in womodo 7.10.1 neu implementierten Parser ist das nun kein Problem mehr.
Beispiel:
some;simple;values "hallo; world";welcome;"" "hallo ""world"" - welcome";have fun; hallo ""world"" - welcome;have fun; ""Quote"";of;the day """Quote""";of;the day
Import-Script:
AFW.Util.csvReader({ columns: ["a","b","c"], process: function(data){ console.log(JSON.stringify(data)) } }).read("test.csv")
Ausgabe:
{"a":"some","b":"simple","c":"values"} {"a":"hallo; world","b":"welcome","c":""} {"a":"hallo \"world\" - welcome","b":"have fun","c":""} {"a":"hallo \"world\" - welcome","b":"have fun","c":""} {"a":"\"Quote\"","b":"of","c":"the day"} {"a":"\"Quote\"","b":"of","c":"the day"}
Korrekte Ergebnisse mit womodo 7.10.1
Der neue csvReader führt nun auch bei komplexen Strukturen zu korrekten Ergebnissen.