在.NET中利用XMLHTTP下载文件

利用XMLHTTP下载文件,和以前的方法一样,先添加引用-COM-Microsoft Xml 3.0,然后在代码开始处写:

<xmp>using MSXML2; </xmp>

下面就是主要的代码:

<xmp>private void Page_Load(object sender, System.EventArgs e) { string Url = &quot;http://dotnet.aspx.cc/Images/logoSite.gif&quot;; string StringFileName = Url.Substring(Url.LastIndexOf(&quot;/&quot;) + 1); string StringFilePath = Request.PhysicalApplicationPath; if(!StringFilePath.EndsWith(&quot;/&quot;)) StringFilePath += &quot;/&quot;; MSXML2.XMLHTTP _xmlhttp = new MSXML2.XMLHTTPClass(); _xmlhttp.open(&quot;GET&quot;,Url,false,null,null); _xmlhttp.send(&quot;&quot;); if( _xmlhttp.readyState == 4 ) { if(System.IO.File.Exists(StringFilePath + StringFileName)) System.IO.File.Delete(StringFilePath + StringFileName); System.IO.FileStream fs = new System.IO.FileStream(StringFilePath + StringFileName, System.IO.FileMode.CreateNew); System.IO.BinaryWriter w = new System.IO.BinaryWriter(fs); w.Write((byte[])_xmlhttp.responseBody); w.Close(); fs.Close(); Response.Write (&quot;文件已经得到。&lt;br&gt;&lt;a href=&#39;&quot; + Request.ApplicationPath + StringFileName +&quot;&#39; target=&#39;_blank&#39;&gt;&quot;); Response.Write (&quot;查看&quot; + StringFileName + &quot;&lt;/a&gt;&quot;); } else Response.Write (_xmlhttp.statusText); Response.End(); } </xmp>

你可能感兴趣的:(.net,xml,Microsoft)