103.10. 文件夹和文件名的通用查找

当 Camel 生成文件时(写入文件)会产生几个影响如何设置您选择的文件名。默认情况下,Camel 将使用消息 ID 作为文件名,因为消息 ID 通常是唯一生成的 ID,因此您将以文件名结尾,例如: ID-MACHINENAME-2443-1211718892437-1-0。如果不需要此类文件名,则必须在 CamelFileName 邮件标头中提供文件名。也可以使用恒定的 Exchange.FILE_NAME

以下示例代码使用消息 ID 作为文件名生成文件:

from("direct:report").to("file:target/reports");

使用 report.txt 作为您必须进行的文件名:

from("direct:report").setHeader(Exchange.FILE_NAME, constant("report.txt")).to( "file:target/reports");
  1. 与以上名称相同,但使用 CamelFileName
from("direct:report").setHeader("CamelFileName", constant("report.txt")).to( "file:target/reports");

语法,其中我们使用 fileName URI 选项在端点上设置文件名。

from("direct:report").to("file:target/reports/?fileName=report.txt");