Класс LineNumberInputStream
- Все реализованные интерфейсы:
Closeable, AutoCloseable
@Deprecated public class LineNumberInputStream extends FilterInputStream
Строка — это последовательность байтов, заканчивающаяся символом возврата каретки ('\r'), символом новой строки ('\n') или символом возврата каретки, за которым непосредственно следует символ перевода строки. Во всех трёх случаях завершающий строку символ или символы возвращаются как один символ новой строки.
Нумерация строк начинается с 0 и увеличивается на 1, когда read возвращает символ новой строки.
- Начиная с:
- 1.0
- См. также:
Краткое описание полей
Поля, объявленные в классе FilterInputStream
in | Модификатор и тип | Поле | Описание |
|---|---|---|
protected InputStream |
in |
Входной поток, к которому применяется фильтр. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
LineNumberInputStream |
Устарел. Создаёт поток ввода с нумерацией строк, который считывает данные из указанного входного потока. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
available() |
Устарел. Возвращает количество байтов, которые можно прочитать из этого входного потока, не блокируя выполнение. |
int |
getLineNumber() |
Устарел. Возвращает текущий номер строки. |
void |
mark |
Устарел. Помечает текущую позицию в этом входном потоке. |
int |
read() |
Устарел. Считывает следующий байт данных из этого входного потока. |
int |
read |
Устарел. Считывает до len байтов данных из этого входного потока в массив байтов. |
void |
reset() |
Устарел. Перемещает этот поток в позицию, в которой находился поток при последнем вызове метода mark для этого входного потока. |
void |
setLineNumber |
Устарел. Устанавливает номер строки равным указанному значению. |
long |
skip |
Устарел. Пропускает и отбрасывает n байтов данных из этого входного потока. |
Методы, объявленные в классе FilterInputStream
close, markSupported, read | Модификатор и тип | Метод | Описание |
|---|---|---|
void |
close() |
Закрывает этот входной поток и освобождает все системные ресурсы, связанные с ним. |
boolean |
markSupported() |
Проверяет, поддерживает ли этот входной поток методы mark и reset. |
int |
read |
Считывает до b.length байтов данных из этого входного потока в массив байтов. |
Методы, объявленные в классе InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo | Модификатор и тип | Метод | Описание |
|---|---|---|
static InputStream |
nullInputStream() |
Возвращает новый InputStream, который не считывает байты. |
byte[] |
readAllBytes() |
Считывает все оставшиеся байты из входного потока. |
int |
readNBytes |
Считывает из входного потока указанное количество байтов в заданный массив байтов. |
byte[] |
readNBytes |
Считывает из входного потока до указанного количества байтов. |
void |
skipNBytes |
Пропускает и отбрасывает ровно n байтов данных из этого входного потока. |
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() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно посредством вызова notify или interrupt, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
LineNumberInputStream
public LineNumberInputStream(InputStream in)
- Параметры:
-
in— базовый входной поток.
Подробное описание методов
read
public int read() throws IOException
int в диапазоне от 0 до 255. Если байт недоступен, поскольку достигнут конец потока, возвращается значение -1. Этот метод блокирует выполнение до тех пор, пока не станут доступны входные данные, не будет обнаружен конец потока или не возникнет исключение. Метод read класса LineNumberInputStream вызывает метод read базового входного потока. Он проверяет наличие символов возврата каретки и символов новой строки во входных данных и соответствующим образом изменяет текущий номер строки. Символ возврата каретки, а также символ возврата каретки, за которым следует символ новой строки, преобразуются в один символ новой строки.
- Переопределяет:
-
readв классеFilterInputStream - Возвращает:
- следующий байт данных или
-1, если достигнут конец этого потока. - Выбрасывает:
-
IOException— если возникает ошибка ввода-вывода. - См. также:
read
public int read(byte[] b, int off, int len) throws IOException
len байтов данных из этого входного потока в массив байтов. Этот метод блокирует выполнение до тех пор, пока не станут доступны какие-либо входные данные. Метод read класса LineNumberInputStream многократно вызывает метод read без аргументов, чтобы заполнить массив байтов.
- Переопределяет:
-
readв классеFilterInputStream - Параметры:
-
b— буфер, в который считываются данные. -
off— начальное смещение данных. -
len— максимальное количество считываемых байтов. - Возвращает:
- общее количество байтов, считанных в буфер, или
-1, если данных больше нет, поскольку достигнут конец этого потока. - Выбрасывает:
-
IOException— если возникает ошибка ввода-вывода. - См. также:
skip
public long skip(long n) throws IOException
n байтов данных из этого входного потока. По разным причинам метод skip может пропустить меньшее количество байтов, возможно, 0. Возвращается фактическое количество пропущенных байтов. Если n отрицательно, байты не пропускаются. Метод skip класса LineNumberInputStream создаёт массив байтов, а затем многократно считывает в него данные, пока не будет считано n байтов или не будет достигнут конец потока.
- Переопределяет:
-
skipв классеFilterInputStream - Параметры:
-
n— количество байтов, которые нужно пропустить. - Возвращает:
- фактическое количество пропущенных байтов.
- Выбрасывает:
-
IOException— если возникает ошибка ввода-вывода. - См. также:
setLineNumber
public void setLineNumber(int lineNumber)
- Параметры:
-
lineNumber— новый номер строки. - См. также:
getLineNumber
public int getLineNumber()
- Возвращает:
- текущий номер строки.
- См. также:
available
public int available() throws IOException
Обратите внимание: если базовый входной поток может предоставить k входных символов без блокировки, LineNumberInputStream может гарантировать предоставление без блокировки только k/2 символов, поскольку k символов базового входного потока могут состоять из k/2 пар '\r' и '\n', которые преобразуются всего в k/2 символов '\n'.
- Переопределяет:
-
availableв классеFilterInputStream - Возвращает:
- количество байтов, которые можно прочитать из этого входного потока, не блокируя выполнение.
- Выбрасывает:
-
IOException— если возникает ошибка ввода-вывода. - См. также:
mark
public void mark(int readlimit)
reset перемещает этот поток к последней помеченной позиции, чтобы при последующих операциях чтения повторно считывались те же байты. Метод mark класса LineNumberInputStream сохраняет текущий номер строки в закрытой переменной, а затем вызывает метод mark базового входного потока.
- Переопределяет:
-
markв классеFilterInputStream - Параметры:
-
readlimit— максимальное количество байтов, которое можно прочитать до того, как позиция метки станет недействительной. - См. также:
reset
public void reset() throws IOException
mark для этого входного потока. Метод reset класса LineNumberInputStream восстанавливает номер строки, сохранённый при вызове метода mark, а затем вызывает метод reset базового входного потока.
Метки потоков предназначены для ситуаций, когда нужно немного прочитать данные вперёд, чтобы понять, что находится в потоке. Часто проще всего сделать это, вызвав универсальный синтаксический анализатор. Если тип потока обрабатывается этим анализатором, он просто продолжает работу. Если поток имеет другой тип, анализатор должен выбросить исключение при сбое; если это происходит в пределах readlimit байтов, внешний код может восстановить исходную позицию потока и попробовать другой анализатор.
- Переопределяет:
-
resetв классеFilterInputStream - Выбрасывает:
-
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.