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;
}
我怎么给这个下载程序加一个进度条那?谢谢,可以显示以下载的大小谢谢!(急)
时时可以看到大小的。
{
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;
}
我怎么给这个下载程序加一个进度条那?谢谢,可以显示以下载的大小谢谢!(急)
时时可以看到大小的。
http://blog.csdn.net/Knight94/archive/2006/05/27/757351.aspx
对应buffer的size在运行下载的过程中窗体总是死的状态,怎么显示进度那?