Получить размер файла http, местоположение загрузки и URL-адрес в метке - PullRequest
1 голос
/ 18 сентября 2010

Я использую это для загрузки файла и получения% информации и полной информации.Я хочу знать, как получить размер загружаемого файла, а также URL-адрес удаленного адреса и локальный адрес, на котором файл сохраняется.

private void Form1_Load_1(object sender, EventArgs e)
        {
     label21.Text = "Download in progress...";
            WebClient webClient = new WebClient();
     webClient.DownloadFileCompleted += new AsyncCompletedEventHandler(Completed);
     webClient.DownloadProgressChanged += new DownloadProgressChangedEventHandler(ProgressChanged);
     webClient.DownloadFileAsync(new Uri("http://www.somesite.com/Update/Updates.zip.010"), @"Updates.zip.010");
 }

private void ProgressChanged(object sender, DownloadProgressChangedEventArgs e)
        {
            progressBar1.Value = e.ProgressPercentage; //Progress Bar Handler
            label1.Visible = true;
            label1.Text = progressBar1.Value.ToString() + " %"; //Adds percent to a label
        }

private void Completed(object sender, AsyncCompletedEventArgs e)
        {
            label11.Visible = true;
            label11.Text = "Done";
        }

1 Ответ

6 голосов
/ 29 ноября 2011

Я просто переписал то, что Джей написал в качестве комментариев к своему собственному вопросу, чтобы было легче читать:

HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://cdn.sstatic.net/stackoverflow/img/favicon.ico");
req.Method = "HEAD";
// HttpWebRequest.GetResponse(): From MSDN: The actual instance returned
// is an HttpWebResponse, and can be typecast to that class to access 
// HTTP-specific properties. 
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
long len = resp.ContentLength;

Просто понял, что это именно то, что в Как получить размер файлаиз заголовков http (может быть, этот вопрос следует пометить как дубликат?).

...