我正在编写一个程序,需要从网站下载一个.exe
文件,然后将其保存到硬盘驱动器。该.exe
存储在我的网站,它的网址如下(它不只是一个我提出了对这个问题的目的,真正的URI):如何使用HttpWebRequest/Response从Web服务器下载二进制(.exe)文件?
http://www.mysite.com/calc.exe
许多网络搜索后,并通过实例摸索这里是代码我想出迄今:
HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create(http://www.mysite.com/calc.exe);
HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse();
Stream responseStream = webResponse.GetResponseStream();
StreamReader streamReader = new StreamReader(responseStream);
string s = streamReader.ReadToEnd();
正如你可以看到我现在用的是StreamReader
类读取数据。在调用ReadToEnd
流读取器是否包含我的.exe的(二进制)内容?我能否将StreamReader
的内容写入文件(名为calc.exe),我将成功下载.exe文件?
我想知道为什么StreamReader
ReadToEnd
返回一个字符串。在我的情况下,这个字符串是calc.exe的二进制内容吗?
非常感谢!将立即检查WebClient.DownloadFile! –
WebClient DownloadFile工作,它只有3行代码! –