csv-into-map(file a, [mapname b], [keycol(s) c], [csv delim d], [csv encoding e], [clear first f])
Gruppe |
Liest eine CSV-Datei in eine Named Map ein. Hinweis: Zeilen, die mit dem Zeichen # beginnen, werden nicht eingelesen.
Parameter a ist der Pfad zur CSV-Datei, b der Name der Map, c der Spalten-Index der Schlüsselspalte, mit 1 beginnend, d ist das CSV-Trennzeichen, e ist das Datei-Encoding, Boolean f gibt an, ob die Map vorher gelöscht wird und g sorgt für Excel-Konformität.
Als Key der Map wird der Wert der Schlüsselspalte c verwendet. Als Wert zum Key wird die gesamte CSV-Zeile, einschließlich der Schlüsselspalte gespeichert, Feldtrenner ist das CSV-Trennzeichen d. Wenn als Key mehrmals derselbe Wert kommt (nicht unique), wird der vorherige Eintrag durch den letzten ersetzt.
Zusammengesetzte Keys: Wenn der Key aus den Werten mehrerer Spalten zusammengesetzt werden soll, kann man in c mehrere Spaltennummern angeben. Das zwischen den Spaltennnummern verwendete Zeichen wird bei der Bildung des Schlüssels in der resultierenden Map verwendet und darf zwischen den einzelnen Werten nicht geändert werden.
Bei wiederholtem Aufruf der Funktion wird die CSV-Datei nur dann neu eingelesen, wenn sie verändert wurde oder wenn seit dem letzten Einlesen mehr als 30 Minuten vergangen sind.
Der Rückgabewert ist die Menge an Einträgen der Map nach dem Durchlauf der Funktion.
Parameterbeschreibung
Parameter |
Beschreibung |
a |
Pfad der CSV-Datei. |
b |
(optional) Name der Map. Default: default |
c |
(optional) Nummer der Schlüssel-Spalte(n). Default: 1 |
d |
(optional) CSV-Trennzeichen. Default: ; |
e |
(optional) Datei-Encoding. Default: Das System-Encoding. |
f |
(optional) Wenn true, dann wird die Map vorher gelöscht. Default: true |
g |
(optional) Wenn true, dann wird Excel-Konformität sichergestellt. Wenn leer, dann false (Default). |
Beispiele
Gegeben sei folgende CSV-Datei value.csv:
key1_1,key1_2,value1,value2,value3
key2_1,key2_2,value4,value5,value6
Verschiedene Parameter und Ergebnisse:
Parameter a |
b |
c |
d |
e |
f |
g |
Ergebnis |
Werte der Map |
./conf/example/values.csv |
RESMAP |
|
, |
|
|
|
2 |
{key1_1=key1_1,key1_2,value1,value2,value3 key2_1=key2_1,key2_2,value4,value5,value6} |
./conf/example/values.csv |
RESMAP |
2 |
, |
|
true |
|
2 |
{key1_2=key1_1,key1_2,value1,value2,value3 key2_2=key2_1,key2_2,value4,value5,value6} |
./conf/example/values.csv |
RESMAP |
1#2 |
, |
|
true |
|
2 |
{key1_1#key1_2=key1_1,key1_2,value1,value2,value3 key2_1#key2_2=key2_1,key2_2,value4,value5,value6} |