@Ignatusha

Как сделать перемещение файлов силами Java?

Нужно проверить наличие файлов в десятках разных директорий и при наличии в них файлов определенного расширения переместить в общую папку. Как будет выглядеть код такого приложения?

Есть например условный путь D:\Data\names\*\docs
между names и docs могут быть разные папки вроде igor, ivan, ruslan но длина пути не меняется.

Заранее спасибо!
  • Вопрос задан
  • 92 просмотра
Решения вопроса 1
@Shiftuia
Java-программист
1 минута в гугле по запросу "java list files recursively" и черновик готов
Так же быстрее, чем писать вопрос на тостере?

Path destination = Paths.get(URI.create("D:\\destination"));
		try (Stream<Path> filesStream = Files.find(
				Paths.get(URI.create("D:\\Data\\names\\")),
				Integer.MAX_VALUE,
				(path, basicFileAttributes) -> basicFileAttributes.isRegularFile() 
						|| path.endsWith(".txt"))) {

			filesStream.forEach(path -> {
				try {
					Files.move(path, destination, StandardCopyOption.REPLACE_EXISTING);
				} catch (IOException e) {
					// не судьба
				}
			});
		}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы