Класс LineNumberReader
- Все реализованные интерфейсы:
Closeable, AutoCloseable, Readable
public class LineNumberReader extends BufferedReader
setLineNumber(int) и getLineNumber() для установки и получения текущего номера строки соответственно. По умолчанию нумерация строк начинается с 0. Это число увеличивается при каждом разделителе строки по мере чтения данных, а также в конце потока, если последний символ в потоке не является разделителем строки. Это число можно изменить вызовом setLineNumber(int). Однако следует учитывать, что setLineNumber(int) фактически не изменяет текущую позицию в потоке; он изменяет только значение, возвращаемое getLineNumber().
Строка считается завершённой любым из следующих символов: переводом строки ('\n'), возвратом каретки ('\r'), возвратом каретки, за которым непосредственно следует перевод строки, любым из перечисленных выше разделителей, за которым следует конец потока, или концом потока, которому не предшествует другой разделитель.
- Начиная с версии:
- 1.1
Краткое описание полей
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
LineNumberReader |
Создаёт новый считыватель с нумерацией строк, используя размер входного буфера по умолчанию. |
LineNumberReader |
Создаёт новый считыватель с нумерацией строк, считывая символы в буфер заданного размера. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
getLineNumber() |
Получает текущий номер строки. |
void |
mark |
Устанавливает отметку в текущей позиции потока. |
int |
read() |
Считывает один символ. |
int |
read |
Считывает символы в часть массива. |
String |
readLine() |
Считывает строку текста. |
void |
reset() |
Возвращает поток к последней отметке. |
void |
setLineNumber |
Устанавливает текущий номер строки. |
Методы, объявленные в классе BufferedReader
close, lines, markSupported, ready | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
close() |
Закрывает поток и освобождает связанные с ним системные ресурсы. |
Stream |
lines() |
Возвращает Stream, элементы которого представляют собой строки, считанные из этого BufferedReader. |
boolean |
markSupported() |
Сообщает, поддерживает ли этот поток операцию mark(), что действительно так. |
boolean |
ready() |
Сообщает, готов ли этот поток к чтению. |
Методы, объявленные в классе Reader
nullReader, of, read, read, readAllAsString, readAllLines, skip, transferTo | Модификатор и тип | Метод | Описание |
|---|---|---|
static Reader |
nullReader() |
Возвращает новый Reader, который не считывает символы. |
static Reader |
of |
Возвращает Reader, считывающий символы из CharSequence. |
int |
read |
Считывает символы в массив. |
int |
read |
Пытается считать символы в указанный символьный буфер. |
String |
readAllAsString() |
Считывает все оставшиеся символы в строку. |
List |
readAllLines() |
Считывает все оставшиеся символы в виде строк текста. |
long |
skip |
Пропускает символы. |
long |
transferTo |
Считывает все символы из этого средства чтения и записывает их в указанное средство записи в порядке считывания. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Показывает, равен ли этот объект какому-либо другому объекту. |
protected void |
finalize() |
Устарело, планируется удаление: этот элемент API может быть удалён в будущей версии. Финализация объявлена устаревшей и может быть удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Заставляет текущий поток ожидать пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
LineNumberReader
public LineNumberReader(Reader in)
- Параметры:
-
in— объект Reader, предоставляющий базовый поток
LineNumberReader
public LineNumberReader(Reader in, int sz)
- Параметры:
-
in— объект Reader, предоставляющий базовый поток -
sz— значение int, задающее размер буфера
Подробное описание методов
setLineNumber
public void setLineNumber(int lineNumber)
- Параметры:
-
lineNumber— значение int, задающее номер строки - См. также:
getLineNumber
public int getLineNumber()
- Возвращает:
- Текущий номер строки
- См. также:
read
public int read() throws IOException
- Переопределяет:
-
readв классеBufferedReader - Возвращает:
- Считанный символ или -1, если достигнут конец потока
- Выбрасывает:
-
IOException— если возникает ошибка ввода-вывода
read
public int read(char[] cbuf, int off, int len) throws IOException
Если len равно нулю, символы не считываются и возвращается 0; в противном случае выполняется попытка считать хотя бы один символ. Если символы недоступны, поскольку достигнут конец потока, возвращается значение -1; в противном случае считывается как минимум один символ и сохраняется в cbuf.
Разделители строк преобразуются в одиночные символы новой строки ('\n'). Текущий номер строки увеличивается при считывании разделителя строки или при достижении конца потока, если последний символ в потоке не является разделителем строки.
- Переопределяет:
-
readв классеBufferedReader - Параметры:
-
cbuf— буфер назначения -
off— смещение, с которого начинается сохранение символов -
len— максимальное количество считываемых символов - Возвращает:
- Количество считанных символов или -1, если достигнут конец потока
- Выбрасывает:
-
IndexOutOfBoundsException— еслиoffотрицательно, илиlenотрицательно, илиlenбольшеcbuf.length - off -
IOException— если возникает ошибка ввода-вывода
readLine
public String readLine() throws IOException
- Переопределяет:
-
readLineв классеBufferedReader - Возвращает:
- Строку String, содержащую текст строки без символов завершения строки, или
null, если достигнут конец потока - Выбрасывает:
-
IOException— если возникает ошибка ввода-вывода - См. также:
mark
public void mark(int readAheadLimit) throws IOException
- Переопределяет:
-
markв классеBufferedReader - Параметры:
-
readAheadLimit— ограничение на количество символов, которые можно считать с сохранением отметки. После считывания этого количества символов попытка сбросить поток может завершиться неудачей. - Выбрасывает:
-
IOException— если возникает ошибка ввода-вывода
reset
public void reset() throws IOException
- Переопределяет:
-
resetв классеBufferedReader - Выбрасывает:
-
IOException— если отметка для потока не установлена или была аннулирована
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.