Core - 2
Существует ли возможность перенаправить потоки стандартного ввода/вывода?
Да, в Java есть возможность перенаправить потоки стандартного ввода/вывода (System.in и System.out) на другие источники/назначения данных.
Для перенаправления потока стандартного ввода (System.in) вы можете использовать метод System.setIn(). Например, чтобы перенаправить ввод из файла "input.txt", вы можете сделать следующее:
try {
FileInputStream fis = new FileInputStream("input.txt");
System.setIn(fis);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
Для перенаправления потока стандартного вывода (System.out) вы можете использовать метод System.setOut(). Например, чтобы перенаправить вывод в файл "output.txt", вы можете сделать следующее:
try {
FileOutputStream fos = new FileOutputStream("output.txt");
PrintStream ps = new PrintStream(fos);
System.setOut(ps);
} catch (FileNotFoundException e) {
e.printStackTrace();
}
После вызова этих методов, все операции чтения из System.in и записи в System.out будут перенаправлены на указанные источники/назначения данных.