Java.nio.files - 复制文件

use*_*422 4 java file copying java.nio.file

任何人都可以通过以下代码告诉我我做错了什么.我没有收到任何错误 - 它只是直接捕获.

import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class Main {

    public static void main(String[] args) {
         Path source = Paths.get("C:\\Users\\Public\\Pictures\\SamplePictures");
    Path nwdir = Paths.get("D:\\NetbeansProjects\\CopyingFiles\\copiedImages");

    try{
    Files.copy(source, nwdir);
    }catch (IOException e){
        System.out.println("Unsucessful. What a surprise!");
    }
    }
}
Run Code Online (Sandbox Code Playgroud)

Jon*_*on7 7

如果你看看Files.copy的Javadocs ,你会注意到这一行(强调添加):

如果文件是目录,则它在目标位置创建一个空目录(不复制目录中的条目).此方法可与walkFileTree方法一起使用,以复制目录和目录中的所有条目,或者复制所需的整个文件树.

所以看起来你需要使用那个walkFileTree方法.

(正如评论者所说,打印出异常,他们经常会告诉你什么是错的!)