Spec-Zone.ru › OpenJDK 17

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

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

Поля, объявленные в классе 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, skipNBytes, 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.
См. также:
  • 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)

© 1993, 2021, 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/17/docs/api/java.desktop/javax/swing/ProgressMonitorInputStream.html

Spec-Zone.ru

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