public
long
DownloadFile(
string
FileURL,
string
FileSavePath)
{
long
Filelength
=
0
;
long
ThisLength
=
0
;
HttpWebRequest req
=
HttpWebRequest.Create(FileURL)
as
HttpWebRequest;
req.Timeout
=
10
*
1000
;
req.AllowAutoRedirect
=
true
;
label1.Text
=
"
=> 正在检测
"
+
FileSavePath
+
"
...
"
;
try
{
HttpWebResponse res
=
req.GetResponse()
as
HttpWebResponse;
System.IO.Stream stream
=
res.GetResponseStream();
Filelength
=
res.ContentLength;
progressBar1.Maximum
=
(
int
)Filelength;
int
allk
=
(
int
)(Filelength
/
1024
);
label1.Text
=
"
=> 正在下载
"
+
FileSavePath
+
"
...
"
;
byte
[] b
=
new
byte
[
1024
];
int
nReadSize
=
0
;
nReadSize
=
stream.Read(b,
0
,
1024
);
System.IO.FileStream fs
=
System.IO.File.Create(FileSavePath);
try
{
while
(nReadSize
>
0
)
{
label1.Refresh();
progressBar1.Value
+=
nReadSize;
ThisLength
+=
nReadSize;
label1.Text
=
"
=> 正在下载
"
+
FileSavePath
+
"
(
"
+
(
int
)(ThisLength
/
1024
)
+
"
K/
"
+
allk
+
"
K)
"
;
fs.Write(b,
0
, nReadSize);
nReadSize
=
stream.Read(b,
0
,
1024
);
}
}
finally
{
fs.Close();
}
progressBar1.Value
=
0
;
progressBar1.Maximum
=
0
;
label1.Text
=
""
;
res.Close();
stream.Close();
}
catch
(Exception er)
{
throw
er;
}
return
Filelength;
}
转载于:https://www.cnblogs.com/guodapeng/archive/2010/01/24/1655386.html