我试图使用路径和文件将大量文件复制到Java 7中的输出目录。这是行不通的:如何将文件复制到Java中的目录7
Files.copy(Paths.get("/my/file.txt"), Paths.get("/my/output/directory/");
它产生一个“目录不为空”的错误。
是的,我可以编写代码来直接命名输出文件,或使用Guava,但我试图用最简单的方法使用新的Java 7 nio类。
我试图使用路径和文件将大量文件复制到Java 7中的输出目录。这是行不通的:如何将文件复制到Java中的目录7
Files.copy(Paths.get("/my/file.txt"), Paths.get("/my/output/directory/");
它产生一个“目录不为空”的错误。
是的,我可以编写代码来直接命名输出文件,或使用Guava,但我试图用最简单的方法使用新的Java 7 nio类。
该命令似乎试图替换目录本身。尝试指定文件名的目标目录
Files.copy(Paths.get("/my/file.txt"), Paths.get("/my/output/directory/file.txt");
我可以做到这一点,但我有大量的文件和一个输出目录,所以指定目录更方便,就像你做操作系统文件拷贝一样 – ccleve
对,用bash很简单,但这是Java 7 API。 –
为什么它更方便?无论如何你都在循环中。多少c你真的需要添加来获取文件路径的“名称”部分,并将其粘贴到目录中? –
最简单的方法:
Path file = /* path to source file */
Path to = /* path to destination directory */
Files.copy(file, to.resolve(file.getFileName()));
你为什么不想要写'Files.copy(Paths.get( “/我/ file.txt的” ),Paths.get(“/ my/output/directory/file.txt”);'?这是正确的方法。 –