c# - 如何确保我下载的文件已经完成?

标签 c# file download webclient

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

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

    using (WebClient client = new WebClient())
    {
        client.DownloadFileAsync(new System.Uri(requestUrl), combinedPaths);
    }

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

最佳答案

您可以触发 WebClient.DownloadFileCompleted 事件并对其执行一些操作:

client.DownloadFileCompleted += new AsyncCompletedEventHandler(DownloadFileCallback);

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

client.DownloadProgressChanged += new DownloadProgressChangedEventHandler(DownloadProgressCallback);

关于c# - 如何确保我下载的文件已经完成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42816906/

相关文章:

c# - 小型应用程序中的连接池

r - 如何检查文件名在R中是否可写?

c# - 垃圾收集未按预期运行

c# 如何快速通过 ~300mb 日志文件进行 grep

javascript - 我们如何设置本地文件的内容类型 header ?

php - 软件处理文件时如何开始下载

python - 使用 python 从 Flickr 下载给定 ID 的照片统计信息

linux - 如何使用 wget 下载网页的全部内容(首页)

c# - 在 C# 中使用 MachineKey 编码进行 Umbraco 解密

c# - 自定义 Windows 7 登录