Я пытаюсь переместить последний измененный файл из папки в другую папку в Java.Я могу выполнить последнее изменение, но не могу переместить его в другую папку
private File getLatestFilefromDir(String dirPath){ File dir = new File(dirPath); File[] files = dir.listFiles(); if (files == null || files.length == 0) { return null; } File lastModifiedFile = files[0]; for (int i = 1; i < files.length; i++) { if (lastModifiedFile.lastModified() < files[i].lastModified()) { lastModifiedFile = files[i]; } } return lastModifiedFile;
}
Импортируйте это:
import java.io.*; import java.nio.file.Files; import java.nio.file.*;
А вот и вы:
private File getLatestFilefromDir(String dirPath) throws IOException{ File dir = new File(dirPath); File[] files = dir.listFiles(); if (files == null || files.length == 0) { return null; } File lastModifiedFile = files[0]; for (int i = 1; i < files.length; i++) { if (lastModifiedFile.lastModified() < files[i].lastModified()) { lastModifiedFile = files[i]; } } String newFilePath = "C:\\newPath\\"+lastModifiedFile.getName(); Path temp = Files.move (Paths.get(dirPath), Paths.get(newFilePath )); if(temp != null) { System.out.println("File renamed and moved successfully"); } else { System.out.println("Failed to move the file"); } return new File(newFilePath ); }
Когда вы получите свой последний измененный файл, просто используйте его для копирования в другую папку:
File dest = new File("path/to/file"); FileUtils.copyDirectory(lastModifiedFile, dest);
импорт - import org.apache.commons.io.FileUtils;
import org.apache.commons.io.FileUtils;