我想继续这个问题:如何从网站下载整个文件。我发现下载文件是一个自动过程,它不会等待用户决定取消/保存。因此,例如用户写入 url 来下载文件并等待 1 分钟。该文件可能会自动开始下载(我使用的是Firefox)到浏览器的内存中,当文件下载时,它会继续处理我有记录器“文件成功下载”的代码,但仍然有弹出窗口决定取消/保存。所以我的问题是我如何才能等待这个决定并对此做出反应。
问问题
93 次
1 回答
0
假设您有一个执行下载的对象。您可以使其实现 Runnable,然后使其作为单独的线程运行。
您可以有一个名为 setDestination(String) 的方法和一个名为 cancel() 的方法。
取消将是这样的:
public synchronized void cancel() {
this.cancelled = True;
}
在你实际执行下载的部分,你会有一个
if (this.cancelled) {
//remove downloaded data
return; //Exit from the download function
}
对于 setDestination,您需要做类似的事情,将下载存储到临时文件中,最后将其移动到目标指示的文件中。
于 2013-02-22T10:05:06.363 回答