Ich versuche, CSV-Datei mit Spring Cloud Datenfluss und Kafka zu streamen. Die Idee besteht darin, die Datei Zeile für Zeile mit Header für jede Zeile zu streamen. Zum Beispiel, wenn der Inhalt meiner CSV-Datei istStream CSV-Datei mit Spring Cloud Dataflow mit Kafka
street,city,zip,state
3526 HIGH ST,SACRAMENTO,95838,CA
51 OMAHA CT,SACRAMENTO,95823,CA
2796 BRANCH ST,SACRAMENTO,95815,CA
Dann wird die gestreamten Daten in folgendem Format (gewünschte Ausgabe)
street,city,zip,state
3526 HIGH ST,SACRAMENTO,95838,CA
street,city,zip,state
51 OMAHA CT,SACRAMENTO,95823,CA
street,city,zip,state
2796 BRANCH ST,SACRAMENTO,95815,CA
ich FileSplitter verwende sein sollten, die Nachrichten an den Ausgangskanal passieren .
private Source channels;
FileSplitter splitter = new FileSplitter(true, true);
splitter.setOutputChannel(channels.output());
splitter.handleMessage(new GenericMessage<File>(file));
Die Ausgabe, die ich zur Zeit bin immer ist
Sink : street,city,zip,state
Sink : 3526 HIGH ST,SACRAMENTO,95838,CA
Sink : 51 OMAHA CT,SACRAMENTO,95823,CA
Sink : 2796 BRANCH ST,SACRAMENTO,95815,CA