Класс FilterReader
java.lang.Object
java.io.Reader
java.io.FilterReader
- Все реализуемые интерфейсы:
Closeable, AutoCloseable, Readable
- Прямые известные подклассы:
PushbackReader
public abstract class FilterReader extends Reader
Абстрактный класс для чтения потоков символов с фильтрацией. Сам абстрактный класс
FilterReader предоставляет методы по умолчанию, которые передают все запросы содержащемуся в нём потоку. Подклассы FilterReader должны переопределять некоторые из этих методов, а также могут предоставлять дополнительные методы и поля.- Начиная с:
- 1.1
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected Reader |
in |
Базовый поток ввода символов. |
Краткое описание конструкторов
| Модификатор | Конструктор | Описание |
|---|---|---|
protected |
Создаёт новый фильтрующий считыватель. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
close() |
Закрывает поток и освобождает связанные с ним системные ресурсы. |
void |
mark |
Отмечает текущую позицию в потоке. |
boolean |
markSupported() |
Сообщает, поддерживает ли этот поток операцию mark(). |
int |
read() |
Считывает один символ. |
int |
read |
Считывает символы в часть массива. |
boolean |
ready() |
Сообщает, готов ли этот поток к чтению. |
void |
reset() |
Сбрасывает поток. |
long |
skip |
Пропускает символы. |
Методы, объявленные в классе Reader
nullReader, of, read, read, readAllAsString, readAllLines, transferTo | Модификатор и тип | Метод | Описание |
|---|---|---|
static Reader |
nullReader() |
Возвращает новый Reader, который не считывает символы. |
static Reader |
of |
Возвращает Reader, который считывает символы из CharSequence. |
int |
read |
Считывает символы в массив. |
int |
read |
Пытается считать символы в указанный буфер символов. |
String |
readAllAsString() |
Считывает все оставшиеся символы в строку. |
List |
readAllLines() |
Считывает все оставшиеся символы в виде текстовых строк. |
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, либо до истечения заданного промежутка времени. |
Подробное описание полей
in
protected Reader in
Базовый поток ввода символов.
Подробное описание конструкторов
FilterReader
protected FilterReader(Reader in)
Создаёт новый фильтрующий считыватель.
- Параметры:
-
in— объект Reader, предоставляющий базовый поток. - Исключения:
-
NullPointerException— еслиinравенnull
Подробное описание методов
read
public int read() throws IOException
Считывает один символ.
- Переопределяет:
-
readв классеReader - Возвращает:
- Считанный символ в виде целого числа в диапазоне от 0 до 65535 (
0x00-0xffff) или -1, если достигнут конец потока - Исключения:
-
IOException— при возникновении ошибки ввода-вывода
read
public int read(char[] cbuf, int off, int len) throws IOException
Считывает символы в часть массива. Этот метод блокирует выполнение до тех пор, пока не появятся входные данные, не произойдёт ошибка ввода-вывода или не будет достигнут конец потока.
Если len равно нулю, символы не считываются и возвращается 0; в противном случае предпринимается попытка считать хотя бы один символ. Если символы недоступны, поскольку достигнут конец потока, возвращается значение -1; в противном случае считывается как минимум один символ и сохраняется в cbuf.
- Определено в:
-
readв классеReader - Параметры:
-
cbuf— буфер назначения -
off— смещение, с которого следует начать сохранение символов -
len— максимальное количество считываемых символов - Возвращает:
- Количество считанных символов или -1, если достигнут конец потока
- Исключения:
-
IndexOutOfBoundsException— еслиoffотрицательно, илиlenотрицательно, илиlenбольшеcbuf.length - off -
IOException— при возникновении ошибки ввода-вывода
skip
public long skip(long n) throws IOException
Пропускает символы. Этот метод блокирует выполнение до тех пор, пока не появятся символы, не произойдёт ошибка ввода-вывода или не будет достигнут конец потока. Если до вызова этого метода поток уже достиг конца, символы не пропускаются и возвращается ноль.
- Переопределяет:
-
skipв классеReader - Параметры:
-
n— количество символов, которые нужно пропустить - Возвращает:
- Фактическое количество пропущенных символов
- Исключения:
-
IllegalArgumentException— еслиnотрицательно, а методskipсодержащегосяReaderвыбрасывает IllegalArgumentException для отрицательного параметра -
IOException— при возникновении ошибки ввода-вывода
ready
public boolean ready() throws IOException
Сообщает, готов ли этот поток к чтению.
- Переопределяет:
-
readyв классеReader - Возвращает:
- true, если гарантируется, что следующий вызов read() не будет блокироваться в ожидании входных данных; в противном случае false. Обратите внимание: возврат false не гарантирует, что следующий вызов read будет блокироваться.
- Исключения:
-
IOException— при возникновении ошибки ввода-вывода
markSupported
public boolean markSupported()
Сообщает, поддерживает ли этот поток операцию mark().
- Переопределяет:
-
markSupportedв классеReader - Возвращает:
- true тогда и только тогда, когда этот поток поддерживает операцию mark.
mark
public void mark(int readAheadLimit) throws IOException
Отмечает текущую позицию в потоке.
- Переопределяет:
-
markв классеReader - Параметры:
-
readAheadLimit— ограничение на количество символов, которые можно считать, сохраняя отметку. После считывания этого количества символов попытка сбросить поток может завершиться неудачей. - Исключения:
-
IOException— при возникновении ошибки ввода-вывода
reset
public void reset() throws IOException
Сбрасывает поток.
- Переопределяет:
-
resetв классеReader - Исключения:
-
IOException— при возникновении ошибки ввода-вывода
close
public void close() throws IOException
Описание скопировано из класса:
ReaderЗакрывает поток и освобождает связанные с ним системные ресурсы. После закрытия потока последующие вызовы read(), ready(), mark(), reset() или skip() приведут к выбросу IOException. Повторное закрытие уже закрытого потока не имеет эффекта.
- Определено в:
-
closeв интерфейсеAutoCloseable - Определено в:
-
closeв интерфейсеCloseable - Определено в:
-
closeв классеReader - Исключения:
-
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.