Класс StringReader

Все реализованные интерфейсы:
Closeable, AutoCloseable, Readable
public class StringReader
extends Reader

Поток символов, источником которого является строка.

С момента:
1.1

Поля

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

lock

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

КонструкторОписание
StringReader​(String s)

Создаёт новый ридер строк.

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

Модификатор и типМетодОписание
voidclose()

Закрывает поток и освобождает все системные ресурсы, связанные с ним.

voidmark​(int readAheadLimit)

Помечает текущую позицию в потоке.

booleanmarkSupported()

Указывает, поддерживает ли этот поток операцию mark(), которую он поддерживает.

intread()

Читает один символ.

intread​(char[] cbuf, int off, int len)

Читает символы в часть массива.

booleanready()

Указывает, готов ли этот поток к чтению.

voidreset()

Возвращает поток к последней метке или к началу строки, если метка никогда не была установлена.

longskip​(long ns)

Пропускает указанное количество символов в потоке.

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

nullReader, 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

Читает символы в часть массива.

Определено в:
read в классе Reader
Параметры:
cbuf - Буфер назначения
off - Смещение, с которого начинать запись символов
len - Максимальное количество символов для чтения
Возвращает значение:
Количество прочитанных символов или -1, если достигнут конец потока
Бросает:
IOException - Если произошла ошибка ввода-вывода
IndexOutOfBoundsException - Если произошла ошибка ввода-вывода

skip

public long skip(long ns)
          throws IOException

Пропускает указанное количество символов в потоке. Возвращает количество пропущенных символов.

Параметр ns может быть отрицательным, даже несмотря на то, что метод skip суперкласса Reader в этом случае выбрасывает исключение. Отрицательные значения ns вызывают пропуск символов назад. Отрицательные значения возвращаемого значения означают пропуск назад. Невозможно пропустить назад за начало строки.

Если вся строка была прочитана или пропущена, то этот метод не имеет эффекта и всегда возвращает 0.

Переопределяет:
skip в классе Reader
Параметры:
ns - Количество символов для пропуска
Возвращает значение:
Количество фактически пропущенных символов
Бросает:
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 - Если произошла ошибка ввода-вывода

close

public void close()

Закрывает поток и освобождает все связанные с ним системные ресурсы. После закрытия потока дальнейшие вызовы read(), ready(), mark() или reset() будут вызывать IOException. Закрытие уже закрытого потока не имеет эффекта. Этот метод будет блокировать, пока другой поток блокирован на чтении.

Определено в:
close в интерфейсе AutoCloseable
Определено в:
close в интерфейсе Closeable
Определено в:
close в классе Reader

© 1993, 2020, 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://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/io/StringReader.html

Spec-Zone .ru
спецификации, руководства, описания, API