1

Spring Cloud DataflowとKafkaでCSVファイルをストリーミングしようとしています。アイデアは、ファイルを各行に含まれるヘッダーとともに1行ずつストリームすることです。例えば、私のcsvファイルの内容はKafkaでSpring Cloud Dataflowを使用してCSVファイルをストリーム

street,city,zip,state 
3526 HIGH ST,SACRAMENTO,95838,CA 
51 OMAHA CT,SACRAMENTO,95823,CA 
2796 BRANCH ST,SACRAMENTO,95815,CA 

が続いてストリームデータは(所望の出力)

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 

私は、出力チャネルにメッセージを渡すためにFileSplitterを使用していますフォーマットを以下にする必要がある場合。

private Source channels; 

FileSplitter splitter = new FileSplitter(true, true); 
splitter.setOutputChannel(channels.output()); 
splitter.handleMessage(new GenericMessage<File>(file)); 

私は現在取得しています出力は

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 

答えて

1

では、最初の行を削除するには、スプリッタの後にフィルタを追加します。

"street,city,zip,state\n" + payload 
にペイロードを変換するフィルタの後、変圧器を追加
関連する問題