使用C#实现可恢复下载

8

我正在使用这个方法(WebClient 类)从互联网下载文件:

private Task DownloadUpdate(string url, string fileName)
{
       var wc = new WebClient();
       return wc.DownloadFileTaskAsync(new Uri(url), @"c:\download" + fileName);
}

我该如何使用上述代码使下载支持断点续传?

请查看范围标头(相关链接:https://dev59.com/73M_5IYBdhLWcg3wThN3)。我不确定WebClient是否具有处理范围(或响应Content-Range)标头的标准支持,这是HTTP下载恢复所必需的 - 如果是这种情况,请寻找其他库/包装器:D - user2246674
2
这里有另一个概述:https://dev59.com/pHM_5IYBdhLWcg3wiDuA(我猜WebClient确实支持基本的范围包装;但你仍然需要正确地发送和处理范围数据),还有更多的实现:https://dev59.com/PmQo5IYBdhLWcg3wKcvH。通过一点搜索可以发现很多惊人的东西(通过“C# web client resume download”找到)。 - user2246674
1个回答

6

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接