我有一个小问题,我想用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这样的外部库。我知道这会容易得多。
答案 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