这样行吗StreamReader sr; 
StreamWriter sw; 
WebRequest HttpWebRequest = WebRequest.Create(url); 
WebResponse HttpWebResponse =HttpWebRequest.GetResponse(); 
sr=new StreamReader(HttpWebResponse.GetResponseStream(),System.Text.Encoding.Default); 
string strHtml=sr.ReadToEnd(); 
sw=File.CreateText(Server.MapPath("html/default.htm")); 
sw.WriteLine(strHtml); 
sw.Close(); 
Response.WriteFile(Server.MapPath("html/default.htm")); 

解决方案 »

  1.   

    用这种方法是行的,我曾经就用过,不过你最好是把.net生成的垃圾代码给屏蔽掉!下面这段是我以前用的,你可以看一下!StringBuilder sbstring = new StringBuilder();
            HttpWebRequest hRequest = (HttpWebRequest)WebRequest.Create(fileUrl);
            HttpWebResponse hResponse = (HttpWebResponse)hRequest.GetResponse();
            Stream StreamString = hResponse.GetResponseStream();
            StreamReader myStream = new StreamReader(StreamString, Encoding.GetEncoding("utf-8"));
            string content = myStream.ReadToEnd().ToString();
            string startstr = "<input type=\"hidden\" name=\"__VIEWSTATE\"";
            string endstr = "<!--top_start-->";
            int bstr = content.IndexOf(startstr);
            int estr = content.IndexOf(endstr);
            string junkstring = content.Substring(bstr, estr - bstr).ToString();    //不需要的代码
            string lastcontent = content;
      

  2.   

    少了 sw.Flush()
    然后  WebResponse  没有关闭
    Stream stream=HttpWebResponse.GetResponseStream();
    stream.close()