Коллеги, подскажите, при использовании файла как в задании выдает совершенно левые числа, подозреваю что он читает CharЫ, подскажите где собака зарыта как сделать так что бы читались именно числа из файла
![]()
package com.javarush.task.task13.task1326;
import java.io.*;
import java.util.*;
/*
Сортировка четных чисел из файла
*/
public class Solution {
public static void main(String[] args) throws IOException {
// напишите тут ваш код
BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
InputStream inStream = null;
BufferedInputStream buffer = null;
String file = reader.readLine();
ArrayList<Integer> list = new ArrayList<>(); //список для всех чисел из файла
ArrayList<Integer> evenList = new ArrayList<>(); //список для четных чисел из файла
try{
inStream = new FileInputStream(file);
buffer = new BufferedInputStream(inStream);
while (buffer.available() > 0){
Integer i = (Integer)buffer.read();
list.add(i);
}
} catch (IOException e) {
e.printStackTrace();
}
finally {
inStream.close();
buffer.close();
}
System.out.println(list); // Для проверки что же все-таки занеслось в массив
for(int i = 0; i < list.size(); i++){
if(list.get(i)%2 == 0){
evenList.add(list.get(i));
}
}
Collections.sort(evenList);
for (Integer i : evenList){
System.out.println(i);
}
}
}
Вывод:
