Spec-Zone.ru › OpenJDK 24

Класс StringReader

java.lang.Object
java.io.Reader
java.io.StringReader
Все реализованные интерфейсы:
Closeable, AutoCloseable, Readable
public class StringReader extends Reader
Поток символов, источником которого является строка.
Замечание по API:
Reader.of(CharSequence) предоставляет метод для чтения из любого CharSequence, который может быть более эффективным, чем StringReader.
С тех пор:
1.1

Краткое описание полей

Поля, объявленные в классе java.io.Reader

lock

Краткое описание конструкторов

Конструктор Описание
StringReader(String s)
Создает новый читатель строк.

Краткое описание методов

Модификатор и тип Метод Описание
void close()
Закрывает поток и высвобождает любые системные ресурсы, связанные с ним.
void mark(int readAheadLimit)
Помечает текущее положение в потоке.
boolean markSupported()
Указывает, поддерживает ли этот поток операцию mark(), что он делает.
int read()
Читает один символ.
int read(char[] cbuf, int off, int len)
Читает символы в часть массива.
boolean ready()
Определяет, готов ли этот поток к чтению.
void reset()
Возвращает поток к последней метке или к началу строки, если она никогда не была помечена.
long skip(long n)
Пропускает символы.

Методы, объявленные в классе java.io.Reader

nullReader, of, read, read, transferTo

Методы, объявленные в классе java.lang.Object

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

Подробное описание конструкторов

StringReader

public StringReader(String s)
Создаёт новый объект чтения строк.
Параметры:
s - Строка, предоставляющая поток символов.

Подробное описание методов

read

public int read() throws IOException
Читает один символ.
Переопределяет:
read в классе Reader
Возвращает:
Прочитанный символ или -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() гарантированно не будет блокироваться из-за ввода
Исключение:
IOException - Если поток закрыт

markSupported

public boolean markSupported()
Указывает, поддерживает ли этот поток операцию mark(), которую он поддерживает.
Переопределяет:
markSupported в классе Reader
Возвращает:
true, если и только если этот поток поддерживает операцию mark.

mark

public void mark(int readAheadLimit) throws IOException
Помечает текущее положение в потоке. Последующие вызовы reset() переместят поток в эту точку.
Переопределяет:
mark в классе Reader
Параметры:
readAheadLimit - Ограничение на количество символов, которое можно прочитать, сохранив метку. Поскольку вход в поток происходит из строки, нет фактического ограничения, поэтому этот аргумент не должен быть отрицательным, но в противном случае игнорируется.
Исключение:
IllegalArgumentException - Если readAheadLimit < 0
IOException - Если произошла ошибка ввода-вывода

reset

public void reset() throws IOException
Возвращает поток к последней метке или к началу строки, если метка никогда не была установлена.
Переопределяет:
reset в классе Reader
Исключение:
IOException - Если произошла ошибка ввода-вывода

Закрыть

public void close()
Закрывает поток и освобождает все системные ресурсы, связанные с ним. После закрытия потока дальнейшие вызовы read(), ready(), mark() или reset() вызовут исключение IOException. Закрытие уже закрытого потока не оказывает никакого влияния. Этот метод будет блокироваться, пока другой поток заблокирован на чтении.
Определено в:
close в интерфейсе AutoCloseable
Определено в:
close в интерфейсе Closeable
Определено в:
close в классе Reader

© 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/StringReader.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API