Класс BufferedReader
Класс BufferedReader используется для чтения текстовых данных из потока ввода с использованием внутреннего буфера. Буферизация позволяет сократить количество обращений к источнику данных (например, файлу или сетевому соединению), что делает чтение более эффективным. В конструктор класса мы передаем объект Reader, из которого будет производиться чтение. Также можно указать размер буфера вторым параметром.
Синтаксис
BufferedReader br = new BufferedReader(Reader in, [int size]);
Пример
Давайте создадим объект BufferedReader для чтения строки и прочитаем первую строку с помощью метода readLine:
import java.io.BufferedReader;
import java.io.StringReader;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
StringReader stringReader = new StringReader("abcde\n12345");
try (BufferedReader br = new BufferedReader(stringReader))
{
String res = br.readLine();
System.out.println(res);
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
Результат выполнения кода:
"abcde"
Пример
Давайте прочитаем все строки из потока и выведем их в консоль:
import java.io.BufferedReader;
import java.io.StringReader;
import java.io.IOException;
public class Main
{
public static void main(String[] args)
{
StringReader stringReader = new StringReader("abcde\n12345");
try (BufferedReader br = new BufferedReader(stringReader))
{
String line;
while ((line = br.readLine()) != null)
{
System.out.println(line);
}
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
Результат выполнения кода:
"abcde"
"12345"
Смотрите также
-
класс
Reader,
который является базовым классом для чтения символов -
класс
InputStreamReader,
который преобразует байтовый поток в символьный -
класс
FileReader,
который используется для чтения символов из файла -
класс
BufferedWriter,
который обеспечивает буферизованную запись символов