Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/309.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 当发现重复文件时,重命名Camel中的文件_Java_Apache Camel - Fatal编程技术网

Java 当发现重复文件时,重命名Camel中的文件

Java 当发现重复文件时,重命名Camel中的文件,java,apache-camel,Java,Apache Camel,当发现重复文件时,我正在尝试重命名Camel中的文件。我有一个包含x个文件的目录,如果另一个文件放在该文件夹中,我希望重命名而不是覆盖原始文件 我尝试使用fileExists和tempFileName选项,但没有解决问题 .to("file://"+decryptedFailed+"?delay=3000&tempFileName=tempName&fileExist=TryRename") 我这样做有什么问题吗?来自: TryRename[…]允许尝试将文件从临时名称重命名为

当发现重复文件时,我正在尝试重命名Camel中的文件。我有一个包含x个文件的目录,如果另一个文件放在该文件夹中,我希望重命名而不是覆盖原始文件

我尝试使用
fileExists
tempFileName
选项,但没有解决问题

.to("file://"+decryptedFailed+"?delay=3000&tempFileName=tempName&fileExist=TryRename")
我这样做有什么问题吗?

来自:

TryRename[…]允许尝试将文件从临时名称重命名为实际名称,而无需执行任何现有检查

这不是你想要的。与
moveExisting
选项一起使用
moveExisting,而不是
TryRename

.to("file://"+decryptedFailed+"?delay=3000&fileExist=Move&moveExisting=${file:name.noext}-${date:now:yyyyMMddHHmmssSSS}.${file:ext}");

您如何使用
fileExist
?提供一些代码。我刚刚将此添加到问题中。感谢您的帮助,它现在可以工作了。唯一的问题是,它当前将原始文件放在一个目录中,其中目录名等于现有名称。有没有可能只有文件而没有目录?@JamesFox您可以使用
file:onlyname
。请查看所有可能性。谢谢Peter,但这并没有阻止文件被放入目录。它必须是moveExisting选项的一个功能。我想我只能忍受它了。