Spec-Zone.ru › OpenJDK 8

Класс 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.

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

close

public void close()
           throws IOException

Переопределяет FilterInputStream.close для закрытия монитора прогресса и потока.

Определено в:
close в интерфейсе Closeable
Определено в:
close в интерфейсе AutoCloseable
Переопределяет:
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.

Spec-Zone.ru

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