Объясните, пожалуйста, в чём дело. Вывод всегда правильный, FileInputStream закрыла, но проверку не проходит.
package com.javarush.task.task13.task1326;
/*
Сортировка четных чисел из файла
*/
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import java.util.*;
public class Solution {
public static void main(String[] args) throws IOException {
// напишите тут ваш код
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
FileInputStream input = new FileInputStream(reader.readLine());
List<Integer> list = new ArrayList<Integer>();
String s = "";
while (input.available() > 0) {
char c = (char)input.read();
if (c == '\r') {
list.add(Integer.parseInt(s));
s = "";
}
else if (c != '\n') {
s += c;
}
}
list.add(Integer.parseInt(s));
input.close();
reader.close();
Iterator<Integer> iterator = list.iterator();
while (iterator.hasNext()) {
if (iterator.next() % 2 != 0)
iterator.remove();
}
iterator = null;
Collections.sort(list);
for (Integer i: list) {
System.out.println(i);
}
list = null;
}
}