对于从生产者到消费者复制文件路径,可以使用file language。
喜欢的东西
from("file:" + "</path/to/original>" + "?noop=true").noAutoStartup().routeId("xxx").split(new ZipSplitter()).streaming()
.convertBodyTo(String.class).to("$simple{file:path}"));
用于过滤基于文件名(最初基于文件名回答过滤): - 您可以使用filter
喜欢的东西
from("file:" + "</path/to/original>" + "?noop=true").noAutoStartup().routeId("xxx").fileFilter($org.apache.camel.Exchange.FILE_NAME.contains("xyz")).split(new ZipSplitter()).streaming()
.convertBodyTo(String.class).to("file:" + "</path/to/import>");
另外,骆驼允许在文件名称本身的正则表达式。 所以,你可以使用类似
from("file:" + "</path/to/original>" + "regex pattern in file name" + "?noop=true").noAutoStartup().routeId("xxx").split(new ZipSplitter()).streaming()
.convertBodyTo(String.class).to("file:" + "</path/to/import>");
谢谢你的回答!也许我的问题还不够清楚:我想要做的就是这样的:'from(“file:”+“ path/to/original>”+“?noop = true”)。noAutoStartup()。 routeId(“xxx”)。split(new ZipSplitter())。streaming() .convertBodyTo(String.class).to(“file:”+“ path/to/import />”+);' –