Копирование нескольких файлов из одной папки в другую в JAVA 15
Path src = Paths.get("./resources");
Path dst = Paths.get("./trash");
try {
DirectoryStream<Path> ds = Files.newDirectoryStream(src);
for(Path fileorDir : ds) {
System.out.println(fileorDir);
Files.copy(fileorDir, dst);
}
}catch(IOException ioe){
ioe.printStackTrace();
}
// Ошибка, которую я получаю, это java.nio.file.FileAlreadyExistsException, поэтому, насколько я понимаю, он пытается сохранить файл в этом точном месте, а не внутри него, мне нужно сохранить пару текстовых файлов таким образом, если я изменю пункт назначения адрес, чтобы сказать, корзина/trash.txt он сохранит там файл с именем trash.txt. но затем в следующем цикле для каждого выдается исключение "Уже существует"...
Может кто-нибудь объяснить, как я могу просто сохранить все файлы txt в эту папку из папки src, как будто перетаскивая их?
Большое спасибо
1 ответ
Вы можете использовать опцию в copy(), которая является StandardCopyOption.REPLACE_EXISTING, но проблема в том, что dst не является хорошим путем. Например, ressources/trash.txt следует скопировать в корзину/trash.txt, а dst — это просто /trash, как путь. Извините за мой английский, и это мой первый ответ :) Будьте милосердны.