我需要在 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/