0

bindy または beanIO camel コンポーネントを使用して csv ファイルを解析するオプションがあります。この csv の他に、キー値を含む dat (txt) ファイルがあります。上記のライブラリのいずれかを使用して、このファイルを解析してマップすることは可能ですか?

4

1 に答える 1

1

bindyコンポーネントは、csv ファイルをMap に直接ではなく、 Object に非整列化できます。これは、Claus Ibsen による関連する質問への回答です。beanIO も同様のようです。

ただし、CamelのCSV コンポーネントを使用して、ファイルをList<List<String>>.

bindy の詳細については、こちら ( Camel サイトのドキュメント) を参照してください。

DataFormat を宣言するだけです。

DataFormat bindy = new BindyCsvDataFormat("com.acme.model");

そして、次のように使用します。

from("file://inbox")
  .unmarshal(bindy)
  .to("direct:whatYouWant");

パラメータ"com.acme.model"は、モデルを定義するパッケージに対応します。Camel bindy はバインディングを構成するための多くのオプションを提供します。詳細についてはドキュメントを参照することをお勧めしますが、基本的なモデルは次のようになります。

@CsvRecord(separator = ",")
public class Order {

    @DataField(pos = 1)
    private int orderNr;

    ...
}
于 2013-10-17T10:03:53.597 に答える