Класс ProgressMonitorInputStream

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

Отслеживает процесс чтения из некоторого потока InputStream. Этот ProgressMonitor обычно вызывается примерно так:

InputStream in = new BufferedInputStream(
                          new ProgressMonitorInputStream(
                                  parentComponent,
                                  "Reading " + fileName,
                                  new FileInputStream(fileName)));

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

Дополнительная документация и примеры см. в Как отслеживать прогресс, разделе учебника The Java Tutorial.

С:
1.2
См. также:
ProgressMonitor, JOptionPane

Поля

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

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 для обновления монитора прогресса после пропуска.

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

available, mark, markSupported

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

nullInputStream, readAllBytes, readNBytes, readNBytes, transferTo

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

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

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

ProgressMonitorInputStream

public ProgressMonitorInputStream(Component parentComponent,
                                  Object message,
                                  InputStream in)

Конструирует объект для отслеживания прогресса входного потока.

Параметры:
message - Описательный текст, который будет помещен в диалоговое окно, если оно отобразится.
parentComponent - Компонент, вызывающий выполняемую операцию, которая отслеживается.
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.

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)

© 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.desktop/javax/swing/ProgressMonitorInputStream.html

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