使用File.copy的NoSuchFileException

时间:2019-11-26 16:53:02

标签: java

尝试将图像文件从一个文件夹复制到另一个文件夹时出现以下错误。

错误消息:

add_form = UserCreationForm

我的代码为:

java.nio.file.NoSuchFileException: C:\Users\William\Pictures\D8McXhNVUAE7VFh.jpg -> \resources\6.jpg
at sun.nio.fs.WindowsException.translateToIOException(Unknown Source)
    at sun.nio.fs.WindowsException.rethrowAsIOException(Unknown Source)
    at sun.nio.fs.WindowsFileCopy.copy(Unknown Source)
    at sun.nio.fs.WindowsFileSystemProvider.copy(Unknown Source)
    at java.nio.file.Files.copy(Unknown Source)
    at data.DAO.addEmployee(DAO.java:130)
    at GUI.NewUser$3.actionPerformed(NewUser.java:184)
    at javax.swing.AbstractButton.fireActionPerformed(Unknown Source)
    at javax.swing.AbstractButton$Handler.actionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.fireActionPerformed(Unknown Source)
    at javax.swing.DefaultButtonModel.setPressed(Unknown Source)
    at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(Unknown Source)

此问题可能是什么原因?

3 个答案:

答案 0 :(得分:3)

您在String sourceFileFile sourceFile中使用了相同的变量名。请重命名其中之一。

例如使用

ex -: String sourceFile
      File file

答案 1 :(得分:2)

您需要在路径字符串中使用双反斜杠,例如C:\\Users\\xxxxxx\\Pictures\\D8McXhNVUAE7VFh.jpg

答案 2 :(得分:2)

在将Files.copy用于图像时,应按流复制。

URI u = URI.create("file:///C:\Users\xxxxxx\Pictures\D8McXhNVUAE7VFh.jpg");
 try (InputStream in = u.toURL().openStream()) {
     Files.copy(in, path);
 }

添加如果您需要按Inout流复制:

How to make an exact copy of image in java?