Класс ProgressMonitorInputStream
- Все реализуемые интерфейсы:
Closeable, AutoCloseable
public class ProgressMonitorInputStream extends FilterInputStream
InputStream in = new BufferedInputStream(
new ProgressMonitorInputStream(
parentComponent,
"Reading " + fileName,
new FileInputStream(fileName)));
Создаёт монитор выполнения для отслеживания процесса чтения входного потока. Если чтение занимает много времени, появляется ProgressDialog, информирующий пользователя. Если пользователь нажмёт кнопку «Отмена», при следующем чтении будет выброшено InterruptedIOException. При закрытии потока выполняется вся необходимая очистка.
Дополнительную документацию и примеры см. в разделе Как отслеживать выполнение Учебника Java.
- Начиная с версии:
- 1.2
- См. также:
Краткое описание полей
Поля, объявленные в классе FilterInputStream
in | Модификатор и тип | Поле | Описание |
|---|---|---|
protected InputStream |
in |
Входной поток, данные которого фильтруются. |
Краткое описание конструкторов
| Конструктор | Описание |
|---|---|
ProgressMonitorInputStream |
Создаёт объект для отслеживания процесса чтения входного потока. |
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
void |
close() |
Переопределяет FilterInputStream.close, чтобы закрыть как монитор выполнения, так и поток. |
ProgressMonitor |
getProgressMonitor() |
Возвращает объект ProgressMonitor, используемый этим потоком. |
int |
read() |
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения. |
int |
read |
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения. |
int |
read |
Переопределяет FilterInputStream.read, чтобы обновить монитор выполнения после чтения. |
void |
reset() |
Переопределяет FilterInputStream.reset, чтобы сбросить монитор выполнения и поток. |
long |
skip |
Переопределяет FilterInputStream.skip, чтобы обновить монитор выполнения после пропуска данных. |
Методы, объявленные в классе FilterInputStream
available, mark, markSupported | Модификатор и тип | Метод | Описание |
|---|---|---|
int |
available() |
Возвращает оценку количества байтов, которые могут быть прочитаны (или пропущены) из этого входного потока без блокировки при следующем вызове метода для этого потока. |
void |
mark |
Помечает текущую позицию в этом входном потоке. |
boolean |
markSupported() |
Проверяет, поддерживает ли этот входной поток методы mark и reset. |
Методы, объявленные в классе InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo | Модификатор и тип | Метод | Описание |
|---|---|---|
static InputStream |
nullInputStream() |
Возвращает новый InputStream, который не читает байты. |
byte[] |
readAllBytes() |
Читает все оставшиеся байты из входного потока. |
int |
readNBytes |
Читает из входного потока указанное количество байтов в заданный массив байтов. |
byte[] |
readNBytes |
Читает из входного потока не более указанного количества байтов. |
void |
skipNBytes |
Пропускает и отбрасывает ровно n байтов данных из этого входного потока. |
long |
transferTo |
Читает все байты из этого входного потока и записывает их в заданный выходной поток в том порядке, в котором они были прочитаны. |
Методы, объявленные в классе Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait | Модификатор и тип | Метод | Описание |
|---|---|---|
protected Object |
clone() |
Создаёт и возвращает копию этого объекта. |
boolean |
equals |
Указывает, является ли другой объект «равным» этому объекту. |
protected void |
finalize() |
Устарело, будет удалено: этот элемент API может быть удалён в будущей версии. Финализация устарела и будет удалена в одном из будущих выпусков. |
final Class |
getClass() |
Возвращает класс времени выполнения этого Object. |
int |
hashCode() |
Возвращает хеш-код этого объекта. |
final void |
notify() |
Пробуждает один поток, ожидающий на мониторе этого объекта. |
final void |
notifyAll() |
Пробуждает все потоки, ожидающие на мониторе этого объекта. |
String |
toString() |
Возвращает строковое представление объекта. |
final void |
wait() |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате уведомления или прерывания. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
final void |
wait |
Переводит текущий поток в состояние ожидания до его пробуждения, обычно в результате уведомления или прерывания, либо до истечения заданного промежутка реального времени. |
Подробное описание конструкторов
ProgressMonitorInputStream
public ProgressMonitorInputStream(Component parentComponent, Object message, InputStream in)
- Параметры:
-
parentComponent— компонент, инициирующий отслеживаемую операцию. -
message— описательный текст, который будет отображён в диалоговом окне, если оно появится. -
in— входной поток, за которым нужно следить.
Подробное описание методов
getProgressMonitor
public ProgressMonitor getProgressMonitor()
- Возвращает:
- объект ProgressMonitor, используемый этим объектом
read
public int read() throws IOException
FilterInputStream.read, чтобы обновить монитор выполнения после чтения.- Переопределяет:
-
readв классеFilterInputStream - Возвращает:
- следующий байт данных или
-1, если достигнут конец потока. - Выбрасывает:
-
IOException— если произошла ошибка ввода-вывода. - См. также:
read
public int read(byte[] b) throws IOException
FilterInputStream.read, чтобы обновить монитор выполнения после чтения.- Переопределяет:
-
readв классеFilterInputStream - Параметры:
-
b— буфер, в который считываются данные. - Возвращает:
- общее количество байтов, считанных в буфер, или
-1, если данных больше нет, поскольку достигнут конец потока. - Выбрасывает:
-
IOException— если произошла ошибка ввода-вывода. - См. также:
read
public int read(byte[] b, int off, int len) throws IOException
FilterInputStream.read, чтобы обновить монитор выполнения после чтения.- Переопределяет:
-
readв классеFilterInputStream - Параметры:
-
b— буфер, в который считываются данные. -
off— начальное смещение в массивеb, по которому записываются данные. -
len— максимальное количество байтов для чтения. - Возвращает:
- общее количество байтов, считанных в буфер, или
-1, если данных больше нет, поскольку достигнут конец потока. - Выбрасывает:
-
IOException— если произошла ошибка ввода-вывода. - См. также:
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— если произошла ошибка ввода-вывода. - См. также:
reset
public void reset() throws IOException
FilterInputStream.reset, чтобы сбросить монитор выполнения и поток.- Переопределяет:
-
resetв классеFilterInputStream - Выбрасывает:
-
IOException— если для этого потока не была установлена отметка или она стала недействительной. - См. также:
© 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.