使用apache commons移动文件FileUtils并不总是成功

时间:2016-12-15 17:16:15

标签: java file apache-commons

我正在使用java.nio.file.WatchService观看目录。当在目录中删除新文件时,我读取该文件并将其移动到备份目录。以下代码将文件从源移动到目标。

private void backUpFile(Path source, String destination) {
        System.out.println("Backing up into " + destination);
        try {
            // Files.copy(source, destination);
            String fileName = FilenameUtils.removeExtension(source.getFileName().toString().toLowerCase()) + "_" + new SimpleDateFormat("yyyyMMddhhmmssSSS'.csv'").format(new Date());
            FileUtils.moveFile(FileUtils.getFile(source.toAbsolutePath().toString()), FileUtils.getFile(
                    destination + "\\" + fileName));

        } catch (IOException e1) {
            e1.printStackTrace();
        }

        System.out.println("Back up done!");
    }

这在我的本地计算机上运行良好。但是当我在远程VM中执行相同的操作(复制和粘贴文件)时,有时很少有文件在移动操作后不会被删除,即使它在目标目录中创建了文件。它不会打印任何错误日志。可能是什么问题?

0 个答案:

没有答案