Загрузка файлов WebClient - C#

Узнай цену своей работы

Формулировка задачи:

Имеется WebClient, который через метод OpenReadAsync загружает файл, и производит с ним определенные действия. Данный файл постоянно изменяется, т.е. в один момент времени он одного содержания, после загрузки уже другого. Но прогрузив его несколько раз WebClient начинает повторять загруженные данные. Т.е. допустим изначально файл содержал текст А, WebClient его загрузил, через некоторое время файл содержит текст В, WebClient вновь его загружает и все равно отображает текст А. В чем может быть проблема? Код загрузки файла:
WebClient webClient = new WebClient();
webClient.OpenReadCompleted += new OpenReadCompletedEventHandler(webClient_OpenReadCompleted);
webClient.OpenReadAsync(new Uri("http://" + IPServer + "/file/" + numberfile + ".txt"));
И что происходит после загрузки:
void webClient_OpenReadCompleted(object sender, OpenReadCompletedEventArgs e)
{
    try
    {
        if (!e.Cancelled && e.Error == null)
        {
            Stream inpStream = e.Result;
            byte[] buffer = new byte[inpStream.Length];
            inpStream.Read(buffer, 0, buffer.Length);
 
            //действия с полученным файлом
 
            }
        }
    catch (Exception ex)
    {
        //
    }
}
Причем иногда бывает, что работает все как надо, но только как появиться хоть один раз данная ошибка и все, он начинает по кругу присылать одни и те же данные. Заранее спасибо за помощь!

Решение задачи: «Загрузка файлов WebClient»

textual
Листинг программы
 public static string downloadURI (Uri uri)
        {
string status = uri.OriginalString;
        using (WebClient Client = new WebClient ()) {
            try
            {
                Client.DownloadFile(uri, fileName);
                status += " загружен";
            }
            catch (Exception e)
                {
                    status += " " + e.Message;
                }
            }
        return status;
        }

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

13   голосов , оценка 4.154 из 5
Похожие ответы