如何确保我下载的文件已完成?

Ner*_*zIT 2 c# webclient file download

我有这个应用程序,当我按下按钮时,它允许我从互联网下载某些文件。但是..我不知道如何确保文件实际上已经完成下载。

我目前正在使用旧的 WebClient 下载文件的方法

    using (WebClient client = new WebClient())
    {
        client.DownloadFileAsync(new System.Uri(requestUrl), combinedPaths);
    }
Run Code Online (Sandbox Code Playgroud)

没有必要展示更多的代码,因为下载功能非常简单直接。我需要弄清楚如何跟踪您正在下载的文件以查看它下载了多少,例如 1 / 100%..我有一个非常好的 ISP,下载速度为 250 Mb/s,所以对我来说真的很难看看它是否真的完成了。

Nic*_*iff 5

你可以触发WebClient.DownloadFileCompleted事件并用它做一些事情:

client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadFileCallback);
Run Code Online (Sandbox Code Playgroud)

要了解下载状态,您可以订阅另一个事件处理程序:

client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressCallback);
Run Code Online (Sandbox Code Playgroud)