РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
860 of 1163 menu

Метод readLine

Метод readLine класса BufferedReader читает одну строку текста из входного потока и возвращает её в виде строки. Строкой считается последовательность символов, завершающаяся символом перевода строки \n, возвратом каретки \r или их комбинацией \r\n. Сами управляющие символы конца строки в результат не включаются. Метод не принимает параметров. Если достигнут конец потока, метод возвращает null. При возникновении ошибки ввода-вывода выбрасывается исключение IOException.

Поскольку метод возвращает null в конце потока, его удобно использовать в цикле while для построчного чтения всего файла или потока ввода.

Синтаксис

reader.readLine()

Пример

Давайте прочитаем первую строку из буферизованного потока, созданного на основе строки "abcde\n12345":

import java.io.BufferedReader; import java.io.IOException; import java.io.StringReader; public class Main { public static void main(String[] args) throws IOException { StringReader sr = new StringReader("abcde\n12345"); BufferedReader reader = new BufferedReader(sr); String res = reader.readLine(); System.out.println(res); reader.close(); } }

Результат выполнения кода:

"abcde"

Пример

Давайте прочитаем все строки из потока в цикле, пока метод readLine не вернёт null:

import java.io.BufferedReader; import java.io.IOException; import java.io.StringReader; public class Main { public static void main(String[] args) throws IOException { StringReader sr = new StringReader("abcde\n12345\nHello"); BufferedReader reader = new BufferedReader(sr); String line; while ((line = reader.readLine()) != null) { System.out.println(line); } reader.close(); } }

Результат выполнения кода:

"abcde" "12345" "Hello"

Пример

Давайте посчитаем количество строк в потоке, используя метод readLine в цикле:

import java.io.BufferedReader; import java.io.IOException; import java.io.StringReader; public class Main { public static void main(String[] args) throws IOException { StringReader sr = new StringReader("abcde\n12345\nHello\nWorld"); BufferedReader reader = new BufferedReader(sr); int count = 0; while (reader.readLine() != null) { count++; } System.out.println(count); reader.close(); } }

Результат выполнения кода:

4

Смотрите также

  • класс BufferedReader,
    который буферизует чтение символов
  • метод lines,
    который возвращает поток строк
  • класс Reader,
    который является базовым для чтения символов
  • метод read,
    который читает один символ из потока
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить