1 Считать с консоли имя файла. Считать содержимое файла. 2 Для каждой строки в файле: 2.1 переставить все символы в обратном порядке. 2.2 вывести на экран. 3 Закрыть потоки. Пример тела входного файла: я - программист. Амиго Пример результата: .тсиммаргорп - я огимА Требования: 1. Программа должна считывать имя файла с консоли (используй BufferedReader). 2. BufferedReader для считывания данных с консоли должен быть закрыт. 3. Программа должна считывать содержимое файла (используй FileReader). 4. Поток чтения из файла (FileReader) должен быть закрыт. 5. Программа должна выводить в консоль все символы из файла в обратном порядке. Привет! Мой код:
public class Solution {
    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        String path = reader.readLine();
        reader.close();
        FileReader readFromFile = new FileReader(path);
        ByteArrayOutputStream baos = new ByteArrayOutputStream();

        while (readFromFile.ready()){
            baos.write(readFromFile.read());
        }
        readFromFile.close();
        String tmpString = baos.toString();
        StringBuilder builder = new StringBuilder();
        String[] tmpMass = tmpString.split("");
        for (int i = 0; i < tmpMass.length; i++){
            builder.append(tmpMass[i]);
        }
        builder.reverse();
        System.out.println(builder.toString());
    }
}
Я могу ошибаться, но консоль говорит мне, что все работает корректно. Однако, валидатор настаивает на том, что "Программа должна выводить в консоль все символы из файла в обратном порядке." Или лыжи не едут, или со мной что-то ...