Java 无法移动文件
我有一个小问题,我想用java移动一个文件,并尝试如下操作:Java 无法移动文件,java,file,move,Java,File,Move,我有一个小问题,我想用java移动一个文件,并尝试如下操作: try { String oFile = frame.selectedFMNGR.getPath() + "\\" + em.getFileName(); String nFile = Start.safePath + "\\" + em.getFileName(); System.out.println(oFile);
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:\mails\B_Testmail1.eml
C:\Safe\B_Testmail1.eml
移动失败
这里怎么了
编辑:我不想使用像ApacheCommons这样的外部库。我知道这会容易得多。试试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);
尝试使用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);
尝试使用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);
尝试使用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);
代码中没有错误或异常 确保源目录中有要从一个位置移动到另一个位置的文件。i、 e
C:\mails\B_Testmail1.eml
代码中没有错误或异常 确保源目录中有要从一个位置移动到另一个位置的文件。i、 e
C:\mails\B_Testmail1.eml
代码中没有错误或异常 确保源目录中有要从一个位置移动到另一个位置的文件。i、 e
C:\mails\B_Testmail1.eml
代码中没有错误或异常 确保源目录中有要从一个位置移动到另一个位置的文件。i、 e
C:\mails\B_Testmail1.eml
目标文件是否已经存在?你写文件时没有关闭它吗?在这两种情况下,重命名都将在Windows上失败。是否已检查文件在新路径中是否不存在?目标文件是否已存在?你写文件时没有关闭它吗?在这两种情况下,重命名都将在Windows上失败。是否已检查文件在新路径中是否不存在?目标文件是否已存在?你写文件时没有关闭它吗?在这两种情况下,重命名都将在Windows上失败。是否已检查文件在新路径中是否不存在?目标文件是否已存在?你写文件时没有关闭它吗?在这两种情况下,重命名都将在Windows上失败。您是否检查过该文件在新路径中不存在?这对我很有帮助。这个错误实际上表明我的文件仍然处于打开状态。在执行此操作时,请在任何地方使用新的API;)你不会在任何时候回到
文件
,所以我会查看它。实际上我是Java新手,忘了带缓冲区的阅读器。当你工作多年的时候,C++和RAII:D/不要忘记使用资源来帮助我。这个错误实际上表明我的文件仍然处于打开状态。在执行此操作时,请在任何地方使用新的API;)你不会在任何时候回到文件
,所以我会查看它。实际上我是Java新手,忘了带缓冲区的阅读器。当你工作多年的时候,C++和RAII:D/不要忘记使用资源来帮助我。这个错误实际上表明我的文件仍然处于打开状态。在执行此操作时,请在任何地方使用新的API;)你不会在任何时候回到文件
,所以我会查看它。实际上我是Java新手,忘了带缓冲区的阅读器。当你工作多年的时候,C++和RAII:D/不要忘记使用资源来帮助我。这个错误实际上表明我的文件仍然处于打开状态。在执行此操作时,请在任何地方使用新的API;)你不会在任何时候回到文件
,所以我会查看它。实际上我是Java新手,忘了带缓冲区的阅读器。在C++和RAI\\D/D中工作多年后的主要问题,也不要忘记尝试使用资源。