我有以下问题:我想使用ftp组件来读取和写入文件以及与ftp用户主目录相关的路径。为此,我在spring中使用了recursive=true,它工作得很好。问题是,我还需要使用tempFileName,但在目标位置*创建为${file:onlyname.noext}.tmp的临时文件不能存储在目标目录中,而是存储在主目录中,即当源是:
A
|-> B
|-> C
|->file.txt目标应该是:
A
|->file.tmp (temporary)
|-> C
|->file.txt (file.tmp cannot be stored here!)然而,tempFileName似乎只在完整路径下工作。这种情况可以改变吗?
发布于 2017-01-23 14:11:34
你现在不能这样做,但是我们有一个改进,所以你将能够在Camel 2.18.2以后的版本中做到这一点。然后,您可以使用../${file:onlyname.noext}.tmp作为临时文件名。
发布于 2017-01-26 03:45:09
由于tempPrefix后缀不是必需的,因此我建议使用.tmp -选项。
<to uri="file:///C?tempPrefix="../" />这将导致您的文件以file.txt名存储在目录A中,直到整个文件完全写入,然后它将被移动到目录C的最终目标。
https://stackoverflow.com/questions/41766879
复制相似问题