Spec-Zone.ru › OpenJDK 27

Класс ProgressMonitorInputStream

java.lang.Object
java.io.InputStream
java.io.FilterInputStream
javax.swing.ProgressMonitorInputStream
Все реализуемые интерфейсы:
Closeable, AutoCloseable
public class ProgressMonitorInputStream extends FilterInputStream
Отслеживает процесс чтения из некоторого InputStream. Обычно этот ProgressMonitor вызывается примерно в таком виде:
InputStream in = new BufferedInputStream(
                         new ProgressMonitorInputStream(
                                 parentComponent,
                                 "Reading " + fileName,
                                 new FileInputStream(fileName)));

Создаёт монитор выполнения для отслеживания процесса чтения входного потока. Если чтение занимает много времени, появляется ProgressDialog, информирующий пользователя. Если пользователь нажмёт кнопку «Отмена», при следующем чтении будет выброшено InterruptedIOException. При закрытии потока выполняется вся необходимая очистка.

Дополнительную документацию и примеры см. в разделе Как отслеживать выполнение Учебника Java.

Начиная с версии:
1.2
См. также:
  • ProgressMonitor
  • JOptionPane

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

Поля, объявленные в классе FilterInputStream

in
Модификатор и тип Поле Описание
protected InputStream in
Входной поток, данные которого фильтруются.

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

Конструктор Описание
ProgressMonitorInputStream(Component parentComponent, Object message, InputStream in)
Создаёт объект для отслеживания процесса чтения входного потока.

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

Модификатор и тип Метод Описание
void close()
Переопределяет FilterInputStream.close, чтобы закрыть как монитор выполнения, так и поток.
ProgressMonitor getProgressMonitor()
Возвращает объект ProgressMonitor, используемый этим потоком.
int read()
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения.
int read(byte[] b)
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения.
int read(byte[] b, int off, int len)
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения.
void reset()
Переопределяет FilterInputStream.reset, чтобы сбросить монитор выполнения и поток.
long skip(long n)
Переопределяет FilterInputStream.skip, чтобы обновить монитор выполнения после пропуска данных.

Методы, объявленные в классе FilterInputStream

available, mark, markSupported
Модификатор и тип Метод Описание
int available()
Возвращает оценку количества байтов, которые могут быть прочитаны (или пропущены) из этого входного потока без блокировки при следующем вызове метода для этого потока.
void mark(int readlimit)
Помечает текущую позицию в этом входном потоке.
boolean markSupported()
Проверяет, поддерживает ли этот входной поток методы mark и reset.

Методы, объявленные в классе InputStream

nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
Модификатор и тип Метод Описание
static InputStream nullInputStream()
Возвращает новый InputStream, который не читает байты.
byte[] readAllBytes()
Читает все оставшиеся байты из входного потока.
int readNBytes(byte[] b, int off, int len)
Читает из входного потока указанное количество байтов в заданный массив байтов.
byte[] readNBytes(int len)
Читает из входного потока не более указанного количества байтов.
void skipNBytes(long n)
Пропускает и отбрасывает ровно n байтов данных из этого входного потока.
long transferTo(OutputStream out)
Читает все байты из этого входного потока и записывает их в заданный выходной поток в том порядке, в котором они были прочитаны.

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

clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Модификатор и тип Метод Описание
protected Object clone()
Создаёт и возвращает копию этого объекта.
boolean equals(Object obj)
Указывает, является ли другой объект «равным» этому объекту.
protected void finalize()
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии.
Финализация устарела и будет удалена в одном из будущих выпусков.
final Class<?> getClass()
Возвращает класс времени выполнения этого Object.
int hashCode()
Возвращает хеш-код этого объекта.
final void notify()
Пробуждает один поток, ожидающий на мониторе этого объекта.
final void notifyAll()
Пробуждает все потоки, ожидающие на мониторе этого объекта.
String toString()
Возвращает строковое представление объекта.
final void wait()
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате уведомления или прерывания.
final void wait(long timeoutMillis)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.
final void wait(long timeoutMillis, int nanos)
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени.

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

ProgressMonitorInputStream

public ProgressMonitorInputStream(Component parentComponent, Object message, InputStream in)
Создаёт объект для отслеживания процесса чтения входного потока.
Параметры:
parentComponent — компонент, инициирующий отслеживаемую операцию.
message — описательный текст, который будет отображён в диалоговом окне, если оно появится.
in — входной поток, за которым нужно следить.

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

getProgressMonitor

public ProgressMonitor getProgressMonitor()
Возвращает объект ProgressMonitor, используемый этим потоком. Обычно он не нужен, если только вы не хотите, например, изменить описательный текст в процессе чтения файла.
Возвращает:
объект ProgressMonitor, используемый этим объектом

read

public int read() throws IOException
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения.
Переопределяет:
read в классе FilterInputStream
Возвращает:
следующий байт данных или -1, если достигнут конец потока.
Выбрасывает:
IOException — если произошла ошибка ввода-вывода.
См. также:
  • FilterInputStream.in

read

public int read(byte[] b) throws IOException
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения.
Переопределяет:
read в классе FilterInputStream
Параметры:
b — буфер, в который считываются данные.
Возвращает:
общее количество байтов, считанных в буфер, или -1, если данных больше нет, поскольку достигнут конец потока.
Выбрасывает:
IOException — если произошла ошибка ввода-вывода.
См. также:
  • FilterInputStream.read(byte[], int, int)

read

public int read(byte[] b, int off, int len) throws IOException
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения.
Переопределяет:
read в классе FilterInputStream
Параметры:
b — буфер, в который считываются данные.
off — начальное смещение в массиве b, по которому записываются данные.
len — максимальное количество байтов для чтения.
Возвращает:
общее количество байтов, считанных в буфер, или -1, если данных больше нет, поскольку достигнут конец потока.
Выбрасывает:
IOException — если произошла ошибка ввода-вывода.
См. также:
  • FilterInputStream.in

skip

public long skip(long n) throws IOException
Переопределяет FilterInputStream.skip, чтобы обновить монитор выполнения после пропуска данных.
Переопределяет:
skip в классе FilterInputStream
Параметры:
n — количество байтов, которые нужно пропустить.
Возвращает:
фактическое количество пропущенных байтов.
Выбрасывает:
IOException — если in.skip(n) выбрасывает IOException.
См. также:
  • InputStream.skipNBytes(long)

close

public void close() throws IOException
Переопределяет FilterInputStream.close, чтобы закрыть как монитор выполнения, так и поток.
Определено в:
close в интерфейсе AutoCloseable
Определено в:
close в интерфейсе Closeable
Переопределяет:
close в классе FilterInputStream
Выбрасывает:
IOException — если произошла ошибка ввода-вывода.
См. также:
  • FilterInputStream.in

reset

public void reset() throws IOException
Переопределяет FilterInputStream.reset, чтобы сбросить монитор выполнения и поток.
Переопределяет:
reset в классе FilterInputStream
Выбрасывает:
IOException — если для этого потока не была установлена отметка или она стала недействительной.
См. также:
  • FilterInputStream.in
  • FilterInputStream.mark(int)

Сообщить об ошибке или предложить улучшение
Дополнительную справочную информацию по API и документацию для разработчиков см. в документации Java SE, содержащей более подробные описания для разработчиков, включая концептуальные обзоры, определения терминов, обходные решения и работающие примеры кода. Другие версии.
Java является товарным знаком или зарегистрированным товарным знаком Oracle и/или её аффилированных лиц в США и других странах.
Авторские права © 1993, 2026, Oracle и/или её аффилированные лица, 500 Oracle Parkway, Redwood Shores, CA 94065 USA.
Все права защищены. Использование регулируется условиями лицензии и политикой распространения документации.

© 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.

Spec-Zone.ru

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