トークナイザーを使用してファイルを行に分割しています。
.split().tokenize("\n", 1)
ただし、処理する必要のあるファイルの一部にはヘッダー行が含まれているため、通常の行とは異なる方法で処理する必要があります。最初の行を読み、それを処理してから、残りの行を分割する簡単な方法はありますか?
トークナイザーを使用してファイルを行に分割しています。
.split().tokenize("\n", 1)
ただし、処理する必要のあるファイルの一部にはヘッダー行が含まれているため、通常の行とは異なる方法で処理する必要があります。最初の行を読み、それを処理してから、残りの行を分割する簡単な方法はありますか?
あなたはこのようなことをすることができます。コンテンツベースのルーターEIPを使用し、次に異なるサブルートを使用して処理します。
from(A)
.split().tokenize("\n",1)
.choice()
.when(simple("${property.CamelSplitIndex} > 0"))
.to("direct:processLine")
.otherwise()
.to("direct:processHeader");
from("direct:processLine")
.bean(processLineBean)
.to(B);
from("direct:processHeader")
.bean(processHeaderBean)
.to(B);