TokenStreamSplitter
|
Gruppe |
|
|
Klassenname |
com.ebd.hub.datawizard.parser.stream.TokenStreamSplitter |
|
Funktion |
Die Stream-Variante des Preparsers TokenFileSplitter. |
|
Konfigurationsdatei |
sample_splitter.properties |
Beschreibung
Die Funktion des TokenStreamSplitter-Preparsers entspricht dem des TokenFileSplitter-Preparsers. Allerdings ist es ein Stream-Preparser, der nicht die gesamte Datei im Arbeitsspeicher halten muss. Daher ist er für sehr große Eingangsdateien gut geeignet.
Ein weiterer Unterschied: Der Parameter header kann auch der Pfad zu einer Textdatei sein. Dazu muss der Wert des Parameters der formalen Syntax read:<URL> entsprechen. Für URL kann man einen lokalen Dateipfad file:///C:/Verzeichnis/Datei.ext, eine HTTP-URL, oder eine FTP-URL einsetzen. Dann wird der gesamte Inhalt dieser Datei, eventuell mehrzeilig, gelesen und als "Trennzeile" (in diesem Fall mehr als "Trennblock") eingefügt.
Parameter
|
rows |
(Pflichtwert) Anzahl der Zeilen, nach der eine Trennzeile eingefügt wird. |
|
header |
(Pflichtwert) Trennzeilen-String, der eingefügt werden soll. |
|
expression |
Regulärer Ausdruck, der das Einfügen einer Trennzeile nach erreichter Zeilenzahl verzögert, bis er auf die momentan gelesene Zeile passt. |
|
eol |
Das Zeilenende-Zeichen (end of line). 0 wird als \n, 1 als \r und alle anderen Werte werden als \r\n interpretiert. |
|
filter |
Regulärer Ausdruck, filtert die Quellzeilen. Inputzeilen, die den Ausdruck nicht treffen, werden ignoriert (nicht ausgegeben und nicht gezählt). |
Beispiel-Datei
## sample file for TokenFileSplitter# # Supported keys are: rows, header, expression, eol## rows = amount of rows that are combined for one record# header = line that will be pasted into to indicate a new record# expression = empty or a reg. expression that must match on current read line to create a new record (beside rows)# eol=end of line (0=\n, 1 = \r, all other settings will be used for \r\n)#rows = 10header=new!