下载文件时如何等待用户决定

时间:2013-02-22 09:55:27

标签: java

我想继续提出这个问题:How to download whole file from website。我发现下载文件是一个自动过程,它不会等待用户决定取消/保存。因此,例如用户将url写入下载文件并等待1分钟。文件自动开始下载(我正在使用firefox)可能是浏览器的内存,当文件下载然后它继续处理代码,我有记录器“文件成功下载”但仍然有弹出窗口,决定取消/保存。所以我的问题是如何等待这个决定并对此作出反应。

1 个答案:

答案 0 :(得分: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,您需要执行类似操作,将下载存储到临时文件,最后将其移动到目标指示的文件。