返回顶部

收藏

C#下载网页(包含网页错误的情况)

更多

C#下载网页,即使网页404或者500错误

public static string GetWebPageAsString(string url)
{
    HttpWebRequest httpWebRequest = (HttpWebRequest) WebRequest.Create(url);
    HttpWebResponse httpWebResponse = null;
    string xml = "";
    try
    {
        httpWebResponse = (HttpWebResponse) httpWebRequest.GetResponse();
    }
    catch (WebException exception)
    {
        if (exception.Status == WebExceptionStatus.ProtocolError)
        { //get the response object from the WebException
            httpWebResponse = exception.Response as HttpWebResponse;
            if (httpWebResponse == null){ return "<Error />";}
        }
    }
    Stream stream = httpWebResponse.GetResponseStream();
    StreamReader streamReader = new StreamReader(stream, Encoding.ASCII);
    xml = streamReader.ReadToEnd();
    //streamReader.Close();
    if (httpWebResponse.StatusCode != System.Net.HttpStatusCode.OK)
    {
        throw new Exception(xml);
    }

    return xml;
}
//该片段来自于http://outofmemory.cn

标签:c#,.net,网络

收藏

0人收藏

支持

0

反对

0

发表评论