用DownloadFile下载文件的问题
try
{
//textBox2.AppendText(PnStr + "_" + PageNo + ".tif 开始重新下载\r\n");
client.DownloadFile(OriUri, DownFileName);
Stream str = client.OpenRead(OriUri);
//StreamReader reader = new StreamReader(str);
byte[] mbyte = new byte[100000];
int allmybyte = (int)mbyte.Length;
int startmbyte = 0;
//textBox2.AppendText("正在接收数据..." + PnStr + "_" + PageNo + ".tif\r\n");
while (allmybyte > 0)
{
int m = str.Read(mbyte, startmbyte, allmybyte);
if (m == 0)
break;
startmbyte += m;
allmybyte -= m;
}
FileStream fstr = new FileStream(DownFilePath, FileMode.OpenOrCreate, FileAccess.Write);
fstr.Write(mbyte, 0, startmbyte);
str.Close();
fstr.Close();
//textBox2.AppendText(PnStr + "_" + PageNo + ".tif 数据下载完成\r\n");
}
catch (WebException exp)
{
MessageBox.Show(exp.Message, "Error");
}
这是我看到的一段下载文件的代码,我觉得奇怪的是client.DownloadFile(OriUri, DownFileName);就可以下载文件了,为什么还要后面写入流再保存,是不是多此一举呢,另外,直接保存和写入流效率是不是一样的?有没有通过压缩文件的方式来下载文?
谢谢!!!