无法移动文件

时间:2014-12-17 18:04:38

标签: java file move

我有一个小问题,我想用java移动文件并尝试这样:

try {
    String oFile = frame.selectedFMNGR.getPath() + "\\" + em.getFileName();
    String nFile = Start.safePath + "\\" + em.getFileName();

    System.out.println(oFile);
    System.out.println(nFile);
    File afile =new File(oFile);

    if(afile.renameTo(new File(nFile))){
        System.out.println("File is moved successful!");
    } else {
        System.out.println("Moving failed!");
    }
} catch(Exception ex){
    ex.printStackTrace();
}

但我的日志总是返回它失败:

  

C:\邮件\ B_Testmail1.eml

     

C:\ Safe \ B_Testmail1.eml

     

移动失败!

这里有什么问题?

编辑:我不想使用像apache commons这样的外部库。我知道这会容易得多。

2 个答案:

答案 0 :(得分:3)

尝试使用java.nio.file;至少,它失败了你会知道原因:

final Path src = Paths.get(frame.selectedFMNGR.getPath(), em.getFileName());
final Path dst = Paths.get(Start.safePath, em.getFileName());

Files.move(src, dst);

答案 1 :(得分:0)

代码中没有错误或异常。

确保源目录中有一个文件,您希望从一个位置移动到另一个位置。即。

C:\mails\B_Testmail1.eml