java.lang.Object
java.io.InputStream
java.io.FilterInputStream
javax.swing.ProgressMonitorInputStream
- 所有已实现的接口:
-
Closeable,AutoCloseable
监视从某个InputStream读取的进度。通常以大致以下形式调用ProgressMonitor:
InputStream in = new BufferedInputStream(
new ProgressMonitorInputStream(
parentComponent,
"Reading " + fileName,
new FileInputStream(fileName)));
这将创建一个进度监视器来监视读取输入流的进度。如果读取需要一段时间,将弹出一个ProgressDialog来通知用户。如果用户点击取消按钮,则在下一次读取时将抛出InterruptedIOException。当流关闭时,将执行所有正确的清理工作。
有关更多文档和示例,请参见如何监视进度,这是《Java教程》中的一节。
- 自版本:
- 1.2
- 另请参阅:
-
Field Summary
Fields declared in class java.io.FilterInputStream
in -
Constructor Summary
ConstructorsConstructorDescriptionProgressMonitorInputStream(Component parentComponent, Object message, InputStream in) 构造一个对象来监视输入流的进度。 -
Method Summary
Modifier and TypeMethodDescriptionvoidclose()重写FilterInputStream.close以关闭进度监视器以及流。获取此流使用的ProgressMonitor对象。intread()重写FilterInputStream.read以在读取后更新进度监视器。intread(byte[] b) 重写FilterInputStream.read以在读取后更新进度监视器。intread(byte[] b, int off, int len) 重写FilterInputStream.read以在读取后更新进度监视器。voidreset()重写FilterInputStream.reset以重置进度监视器以及流。longskip(long n) 重写FilterInputStream.skip以在跳过后更新进度监视器。Methods declared in class java.io.FilterInputStream
available, mark, markSupportedMethods declared in class java.io.InputStream
nullInputStream, readAllBytes, readNBytes, readNBytes, skipNBytes, transferTo
-
Constructor Details
-
ProgressMonitorInputStream
构造一个对象来监视输入流的进度。- 参数:
-
parentComponent- 触发正在监视的操作的组件。 -
message- 如果弹出对话框,要放入其中的描述性文本。 -
in- 要监视的输入流。
-
-
Method Details
-
getProgressMonitor
获取此流使用的ProgressMonitor对象。通常不需要此操作,除非您想在读取文件的过程中更改描述性文本。- 返回:
- 此对象使用的ProgressMonitor对象
-
read
重写FilterInputStream.read以在读取后更新进度监视器。- 重写:
-
read在类中FilterInputStream - 返回:
-
下一个数据字节,如果到达流的末尾,则为
-1。 - 抛出:
-
IOException- 如果发生I/O错误。 - 另请参阅:
-
read
重写FilterInputStream.read以在读取后更新进度监视器。- 重写:
-
read在类中FilterInputStream - 参数:
-
b- 要读取数据的缓冲区。 - 返回:
-
读入缓冲区的总字节数,如果没有更多数据,因为已到达流的末尾,则为
-1。 - 抛出:
-
IOException- 如果发生I/O错误。 - 另请参阅:
-
read
重写FilterInputStream.read以在读取后更新进度监视器。- 重写:
-
read在类中FilterInputStream - 参数:
-
b- 要读取数据的缓冲区。 -
off- 写入数据的数组b中的起始偏移量。 -
len- 要读取的最大字节数。 - 返回:
-
读入缓冲区的总字节数,如果没有更多数据,因为已到达流的末尾,则为
-1。 - 抛出:
-
IOException- 如果发生I/O错误。 - 另请参阅:
-
skip
重写FilterInputStream.skip以在跳过后更新进度监视器。- 重写:
-
skip在类中FilterInputStream - 参数:
-
n- 要跳过的字节数。 - 返回:
- 实际跳过的字节数。
- 抛出:
-
IOException- 如果in.skip(n)引发IOException。 - 另请参阅:
-
close
重写FilterInputStream.close以关闭进度监视器以及流。- 指定者:
-
close在接口中AutoCloseable - 指定者:
-
close在接口中Closeable - 重写:
-
close在类中FilterInputStream - 抛出:
-
IOException- 如果发生I/O错误。 - 另请参阅:
-
reset
重写FilterInputStream.reset以重置进度监视器以及流。- 重写:
-
reset在类中FilterInputStream - 抛出:
-
IOException- 如果此流未被标记或标记已失效。 - 另请参阅:
-