Java Программа для возврата последнего файла в папку, соответствующую содержимому - PullRequest
0 голосов
/ 11 апреля 2020

Я пишу программу на Java, которая будет анализировать файлы из папки и затем возвращать последний файл, соответствующий строке.

Например, в папке с 4 файлами (4-й файл с последним измененным файлом). свидание). Сейчас я пишу программу, которая будет возвращать последний файл, содержащий строку, а не только последний файл в папке. На рисунке ниже я ожидаю, что код Java вернет файл 3, а не файл 4.

enter image description here

Вот код, который я пытаюсь выполнить и я обнуляю Я сейчас отлаживаю код, который не уверен, почему он просто не вводится, пока l oop.

Код ниже работает.

    public class LatestFileMatchingString {

    public static void main(String[] args) {
        File directory = new File("testDataFolder");
        File[] files = directory.listFiles(File::isFile);
        long lastModifiedTime = Long.MIN_VALUE;
        File chosenFile = null;

        if (files != null)
        {
            for (File file : files)
            {
                if (file.lastModified() > lastModifiedTime)
                {

                    try {
                        int count = 0;
                        FileReader fileIn = new FileReader(file);
                        BufferedReader reader = new BufferedReader(fileIn);
                        String line;
                        Scanner scanner = new Scanner(file);
                        while (scanner.hasNextLine()) {
                            String newLine = scanner.nextLine();
                            System.out.println(newLine);
                            if((newLine.contains("JAVASTRING"))) {
                                chosenFile = file;
                                lastModifiedTime = file.lastModified();
                                System.out.println("This file has string " + file);
                            }
                        }
                    }catch (IOException e){
                        System.out.println(e);
                    }
                }
            }
        }

        System.out.println("The latest File with matching string is : " + chosenFile);
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...