您的位置:首页 > 运维架构 > 网站架构

C#获取网站源码的两种方式,不乱码

2016-01-11 11:19 429 查看
/// <summary>
/// 获取网站源码 缺点:不能自动识别网站编码格式,可能乱码
/// 引用 : System.IO System.Net
/// </summary>
private void GetSource()
{
WebClient webClient = new WebClient();

Stream stream = webClient.OpenRead("http://www.baidu.com");

StreamReader sr = new StreamReader(stream, Encoding.UTF8);

string htmlSource = sr.ReadToEnd();

Console.WriteLine(htmlSource);
}

private void GetSource2()
{

HttpWebRequest req = (HttpWebRequest)WebRequest.Create(tbUrl.Text);
req.Method = "GET";
string str;
using (HttpWebResponse res = req.GetResponse() as HttpWebResponse)
{
if (res.CharacterSet.ToLower() == "gb2312")
{
lbEncode.Text = "GB2312";
using(StreamReader reader = new StreamReader(res.GetResponseStream(),Encoding.GetEncoding("gb2312")))
{
tbWebSource.Text = reader.ReadToEnd();
}
}
else
{
lbEncode.Text = "UTF-8";
using (StreamReader reader = new StreamReader(res.GetResponseStream(), Encoding.GetEncoding("utf-8")))
{
tbWebSource.Text = reader.ReadToEnd();
}
}
}

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: