private bool Download_File(string remotefile, string localfile)
        {
            bool Status = true;            Stream inStream = null;
            FileStream fileStream = null;            try
            {
                if (remotefile.IndexOf(@"http://") == -1)
                    remotefile = @"http://" + remotefile;                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(remotefile);                HttpWebResponse response = (HttpWebResponse)request.GetResponse();                inStream = response.GetResponseStream();                long fileSizeInBytes = response.ContentLength;
                label1.Text = fileSizeInBytes.ToString();                fileStream = new FileStream(localfile, FileMode.OpenOrCreate, FileAccess.Write);
                
                int length = 1024;
                byte[] buffer = new byte[1025];
                int bytesread = 0;
                while ((bytesread = inStream.Read(buffer, 0, length)) > 0)
                {
                    fileStream.Write(buffer, 0, bytesread);
                }
            }
            catch (Exception fe)
            {
                MessageBox.Show(fe.Message); 
                Status = false;
                return Status;
            }
            finally
            {
                if (inStream != null)
                    inStream.Close();
                if (fileStream != null)
                    fileStream.Close();
            }
            return Status;
        }
我怎么给这个下载程序加一个进度条那?谢谢,可以显示以下载的大小谢谢!(急)
时时可以看到大小的。

解决方案 »

  1.   

    参看
    http://blog.csdn.net/Knight94/archive/2006/05/27/757351.aspx
      

  2.   

    bluedodo(笑三少) ( ) 信誉:99 
    对应buffer的size在运行下载的过程中窗体总是死的状态,怎么显示进度那?
      

  3.   

    to 在运行下载的过程中窗体总是死的状态,怎么显示进度那?如果你是在主线程去做,那么由于下载会占用大量的系统资源,系统可能无法相应其它事件,相当于假死,如果像比较好的显示,需要ui和下载进行分开,即把下载放到子线程中去做,然后在子线程中去根据下载进度去显示进度条。