c# - 如何在 .NET 中下载大文件(通过 HTTP)?

标签 c# .net http large-files

我需要在 C# 控制台应用程序中通过 HTTP 下载一个文件 (2 GB)。问题是,在大约 1.2 GB 之后,应用程序内存不足。

这是我使用的代码:

WebClient request = new WebClient();
request.Credentials = new NetworkCredential(username, password);
byte[] fileData = request.DownloadData(baseURL + fName);

如您所见...我正在将文件直接读入内存。如果我以 block 的形式从 HTTP 读回数据并将其写入磁盘上的文件,我很确定我可以解决这个问题。

我该怎么做?

最佳答案

如果您使用 WebClient.DownloadFile您可以将其直接保存到文件中。

关于c# - 如何在 .NET 中下载大文件(通过 HTTP)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1078523/

相关文章:

c# - 如何删除文本框上的小写字母?

php - 可以安全地将 $HTTP_XXXX_VARS 替换为 $_XXXX

c# - 如何将文件拆分成多个部分并下载

c# - ODATA 从 C# ASP.NET 4.0 消费服务操作

c# - if else语句的写法

c# - 无法处理从 HTTP/HTTPS 协议(protocol)到其他不同协议(protocol)的重定向

.net - C# 线程和 SQL 连接

c# - 求解数学表达式

c# - 当字段名称是保留关键字时从 F# 访问 .Net 字段

javascript - 如何从ReactJS中的初始页面请求中获取HTTP请求 header