Sobes.tech
Junior — Middle

Care este diferența dintre clasele InputStream și Reader atunci când lucrați cu fluxuri de date în Java?

sobes.tech AI

Răspuns de la AI

Класс InputStream предназначен для чтения потоков байтов (byte streams), то есть работает с необработанными байтами. Он используется, когда нужно читать бинарные данные, например, из файлов, сетевых соединений или других источников.

Класс Reader работает с потоками символов (character streams), то есть с текстовыми данными. Он учитывает кодировку символов и преобразует байты в символы, что удобно для работы с текстом.

Пример:

InputStream input = new FileInputStream("file.bin"); // для бинарных данных
Reader reader = new FileReader("file.txt"); // для текстовых данных

Таким образом, главное отличие — InputStream работает с байтами, Reader — с символами, учитывая кодировку.