@Coline

Как работать с HTML страницей, которая не помещается в оперативную память?

Делаю тестовое. В нём, для начала, надо получить HTML страницу по URL. Это как-то так
var сlient = new System.Net.WebClient();
            var html = webClient.DownloadString("https://любойсайт.com/");

Всё было бы слишком просто, если бы не условие - гарантируется, что размер HTML страницы превышает объём оперативки компа, который этот код будет запускать. Как это сделать? Я подозреваю что надо как-то с потоком и буфером работать, порциями данных, но не знаю, как это делается
  • Вопрос задан
  • 201 просмотр
Решения вопроса 1
Используй Stream и сохраняй html на диск.
что-то типа
using System.IO;
using System.Net.Http;

var httpClient = new HttpClient();
await using var response = await httpClient.GetStreamAsync("https://example.com");
await using var file = File.OpenWrite("site.html");
await response.CopyToAsync(file);
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы