Camel:“文件”组件,但只传递文件名作为正文

时间:2012-02-21 19:46:36

标签: apache-camel

我正在尝试使用Camel处理可能很大的文件,并且担心它们在Camel Message的主体中“适合”。有没有办法可以将文件的名称(路径)作为消息正文传递,然后在处理器中使用它来从磁盘读取?

1 个答案:

答案 0 :(得分:9)

您只需传入java.io.File实例即可。这基本上是Camel文件组件自身的作用(尽管它放在WrappedFile中,因为它与ftp组件共享代码)。

您当然也可以只将文件名存储为String,然后从处理器访问该文件,或者

String name = exchange.getIn().getBody(String.class);
File file = new File(name);
...
FileInputStream fis = new FileInputStream(file);
// read the file from the stream, etc.
相关问题