Назад к вопросам
Junior — Middle
67
Какое отличие между классами InputStream и Reader при работе с потоками данных в Java?
Ответ от нейросети
sobes.tech AI
Класс InputStream предназначен для чтения потоков байтов (byte streams), то есть работает с необработанными байтами. Он используется, когда нужно читать бинарные данные, например, из файлов, сетевых соединений или других источников.
Класс Reader работает с потоками символов (character streams), то есть с текстовыми данными. Он учитывает кодировку символов и преобразует байты в символы, что удобно для работы с текстом.
Пример:
InputStream input = new FileInputStream("file.bin"); // для бинарных данных
Reader reader = new FileReader("file.txt"); // для текстовых данных
Таким образом, главное отличие — InputStream работает с байтами, Reader — с символами, учитывая кодировку.