Считать с консоли имя файла. Файл содержит слова, разделенные знаками препинания. Вывести в консоль количество слов «world«, которые встречаются в файле. Закрыть потоки. Требования: 1. Программа должна считывать имя файла с консоли (используй BufferedReader). 2. BufferedReader для считывания данных с консоли должен быть закрыт. 3. Программа должна считывать содержимое файла (используй FileReader c конструктором String). 4. Поток чтения из файла (FileReader) должен быть закрыт. 5. Программа должна выводить в консоль количество слов "world", которые встречаются в файле. Добрый вечер! Валидатор не принимает решение по пункту: Программа должна выводить в консоль количество слов "world", которые встречаются в файле.
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.InputStreamReader;

public class Solution {
    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        BufferedReader fileIn = null;
        try {
            String fileName = reader.readLine();
            fileIn = new BufferedReader(new FileReader(fileName));
            StringBuilder string = new StringBuilder();
            String pattern = "world";
            while (fileIn.ready())
                string.append(fileIn.readLine());
            System.out.println((string.toString().length() - string.toString().replaceAll(pattern, "").length()) / pattern.length());
        }finally {
            reader.close();
            if (fileIn != null) fileIn.close();
        }
    }
}