Валидатор не пропускает по 4-ому пункту. Вывод не соответствует заданию. Проверь свое решение на примере из условия. Проверку по примеру проходит. Решение непростое, но на, первый взгляд, - рабочее. тут по тексту последняя редакция кода - почистил перышки.
package com.javarush.task.task13.task1326;

import java.io.*;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.FileInputStream;
import java.util.ArrayList;
import java.util.Collections;

/*
Сортировка четных чисел из файла
*/

public class Solution {
    public static void main(String[] args) {
        try (BufferedReader reader = new BufferedReader(new InputStreamReader(System.in))) {
            ArrayList<String> list = new ArrayList<>();
            StringBuilder sb = new StringBuilder();
            InputStream inputStream = new FileInputStream(reader.readLine());// вводим путь к файлу
            BufferedInputStream buffer = new BufferedInputStream(inputStream);
            while (buffer.available() > 0) {    // читаем поток посимвольно и переносим в строку (StringBuilder) по символам-маркерам (числа и знак минус)
                char c = (char) buffer.read();
                if (c == '-' || c == '0' || c == '1' || c == '2' || c == '3' || c == '4' || c == '5' || c == '6' || c == '7' || c == '8' || c == '9')
                    sb.append(c);
                else if (!String.valueOf(sb).equals("")) {  // по появлению немаркированного условием символа в потоке и при ненулевом значении строки
                    list.add(String.valueOf(sb));    // переносим строку в лист строк
                    if (buffer.available() > 0)      // мягко обнуляем строку перед новым наполнением всегда, кроме последнего раза
                        sb = new StringBuilder();
                }
            }
            ArrayList<Integer> list1 = new ArrayList<>(); // лист строк переносим в лист Интеджеров и параллельно убираем нечетные
            for (int i = 0; i < list.size(); i++) {
                if (Integer.parseInt(list.get(i)) % 2 == 0) {
                    list1.add(Integer.parseInt(list.get(i)));
                }
            }
            Collections.sort(list1);                              // сортируем
            for (int i = 0; i < list1.size(); i++)
                System.out.println(list1.get(i));            // выводим в консоль
            inputStream.close();
            buffer.close();
        } catch (Exception e) {
            System.out.println("Error");
        }

    }
}