Класс CharArrayReader
- Все реализованные интерфейсы:
-
Closeable,AutoCloseable,Readable
public class CharArrayReader extends Reader
- С тех пор:
- 1.1
Краткое описание полей
| Модификатор и тип | Поле | Описание |
|---|---|---|
protected char[] |
buf |
Буфер символов. |
protected int |
count |
Индекс конца этого буфера. |
protected int |
markedPos |
Положение метки в буфере. |
protected int |
pos |
Текущее положение в буфере. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
CharArrayReader |
Создаёт CharArrayReader из указанного массива символов. |
CharArrayReader |
Создаёт CharArrayReader из указанного массива символов. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
close() |
Закрывает поток и освобождает связанные с ним системные ресурсы. |
void |
mark |
Помечает текущее положение в потоке. |
boolean |
markSupported() |
Указывает, поддерживает ли этот поток операцию mark(), что он делает. |
int |
read() |
Читает один символ. |
int |
read |
Читает символы в часть массива. |
boolean |
ready() |
Указывает, готов ли этот поток к чтению. |
void |
reset() |
Возвращает поток к последней метке или к началу, если метка никогда не была установлена. |
long |
skip |
Пропускает символы. |
Методы, объявленные в классе java.io.Reader
nullReader, of, read, read, transferTo
Подробное описание полей
buf
protected char[] buf
pos
protected int pos
markedPos
protected int markedPos
count
protected int count
Подробное описание конструкторов
CharArrayReader
public CharArrayReader(char[] buf)
- Параметры:
-
buf- Входной буфер (не копируется)
CharArrayReader
public CharArrayReader(char[] buf, int offset, int length)
Результирующий ридер начнет чтение с указанного offset. Общее количество char значений, которые можно прочитать из этого ридера, будет либо length, либо buf.length-offset, в зависимости от меньшего значения.
- Параметры:
-
buf- Входной буфер (не копируется) -
offset- Смещение первого символа для чтения -
length- Количество символов для чтения - Исключения:
-
IllegalArgumentException- Еслиoffsetотрицательно или большеbuf.length, или еслиlengthотрицательно, или если сумма этих двух значений отрицательна.
Подробное описание методов
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
Параметр n может быть отрицательным, хотя метод skip суперкласса Reader выбрасывает исключение в этом случае. Если n отрицательно, то этот метод ничего не делает и возвращает 0.
- Переопределяет:
-
skipв классеReader - Параметры:
-
n- Количество символов для пропуска - Возвращает:
- Количество фактически пропущенных символов
- Исключения:
-
IOException- Если произошла ошибка ввода-вывода
ready
public boolean ready() throws IOException
- Переопределяет:
-
readyв классеReader - Возвращает:
- True, если следующий вызов read() гарантированно не заблокируется для ввода, false в противном случае. Обратите внимание, что возвращение false не гарантирует, что следующий read заблокируется.
- Исключения:
-
IOException- Если произошла ошибка ввода-вывода
markSupported
public boolean markSupported()
- Переопределяет:
-
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()
© 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.
https://download.java.net/java/early_access/jdk24/docs/api/java.base/java/io/CharArrayReader.html