jame
jame

Reputation: 132

java the system can not find the file specified

I used Java to copy file but it appeared a exception (the system can not find the file specified).

The codes are

public static void copyFile(String sourceFile, String destFile){
    try {       
        InputStream in = new FileInputStream(sourceFile);
        OutputStream os = new FileOutputStream(destFile);
        byte[] buffer = new byte[1024];
        int count;
        while ((count = in.read(buffer)) > 0) {
            os.write(buffer, 0, count);
        }
        in.close();
        os.close();
    } catch (IOException e) {
        e.printStackTrace();
    }
}

The test codes

public static void main(String[] args) {
    String name = getFileName("D:/z/temp.txt");
    String target = "D:/tem.txt";
    copyFile(name, target);
}

the exception is java.io.FileNotFoundException: temp.txt(the system can not find the file specified)

  1. The file 'temp.txt' is existence.
  2. The path is right no problem.

I guess that is the problem of Permissions. who can come up with the answer thanks!

Upvotes: 3

Views: 1120

Answers (1)

Ernest Friedman-Hill
Ernest Friedman-Hill

Reputation: 81674

We need to see the method getFileName() to be sure, but based on the error message and the method name, I suspect the problem is just that this method returns only the name of the file, removing the path info, so that the file is, indeed, not found.

Upvotes: 6

Related Questions