【问题标题】:How to move an already moved file to new directory如何将已移动的文件移动到新目录
【发布时间】:2017-07-11 11:19:20
【问题描述】:

我正在尝试在文件夹之间移动单个文件。我使用 file.renameTo() 来移动我的文件。

//moving the file to new folder
//this is success 
boolean fileMoveCompleted = finalFileToProcess
                        .renameTo(new File(processingFolderName
                                + File.separator + finalFileToProcess.getName()));

//now trying to move the renamed file to another folder
//this is failing
 fileMoveCompleted = finalFileToProcess
                                .renameTo(new File(successFolderName
                                        + File.separator
                                        + finalFileToProcess.getName()));

在第一个renameTo 之后,文件路径仍指向旧路径。有什么办法可以将同一个文件移动到另一个目录?

【问题讨论】:

    标签: java file java-io


    【解决方案1】:

    您需要保留 renameTo 的第一个目标文件作为参考并重命名该文件。

    File processing = new File(processingFolderName 
                            + File.separator 
                            + finalFileToProcess.getName());
    boolean fileMoveCompleted = finalFileToProcess.renameTo(processing);
    File finished = new File(successFolderName 
                            + File.separator 
                            + finalFileToProcess.getName());
    fileMoveCompleted = processing.renameTo(finished);
    

    但正如File.renameTo's JavaDoc 建议的那样,您最好使用Files.move

    【讨论】:

      猜你喜欢
      • 2013-04-14
      • 1970-01-01
      • 1970-01-01
      • 2015-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多