【发布时间】:2014-04-11 22:55:37
【问题描述】:
我正在编写一个 Java 应用程序(使用 NetBeans 作为 IDE 和 jFrame 表单),其中一部分下载了一个文件。如何使用当前下载进度更新进度条,或者至少在另一个线程中获取当前下载的字节总数?
以下是我的部分代码:
Runnable updatethread = new Runnable() {
public void run() {
try {
java.io.BufferedInputStream in = new java.io.BufferedInputStream(new java.net.URL("server/package.zip").openStream());
java.io.FileOutputStream fos = new java.io.FileOutputStream("package.zip");
java.io.BufferedOutputStream bout = new BufferedOutputStream(fos,1024);
byte[] data = new byte[1024];
int x=0;
while((x=in.read(data,0,1024))>=0)
{
bout.write(data,0,x);
}
bout.close();
in.close();
}
catch(FileNotFoundException e) { } catch (IOException e) { }
}
};
new Thread(updatethread).
start();
try {
updatethread.wait();
} catch (InterruptedException ex) { }
【问题讨论】:
-
@deejay31 一般情况下,遇到
{时缩进四个空格或一个制表符,遇到}时取消缩进。
标签: java multithreading swing jframe