C#如何获取网站网页的正常编码的源码内容???

qushui 2003-10-11 03:46:00
我的方法如下,获取url为http://www.sohu.com就出现汉字乱码?对于日文登就更不用说了
如何让程序自动的识别???????????????????????????
public string WebClientGetSource(string url)
{
string source="";
try
{
WebClient client=new WebClient();
Stream data=client.OpenRead(url);
StreamReader reader=new StreamReader(data,Encoding.Unicode);
string strTemp="";
while((strTemp=reader.ReadLine())!=null)
{
source+=strTemp+"\r\n";
}

}
catch(WebException exp)
{
MessageBox.Show(exp.Message,"Exception");
}
return source;
}
...全文
129 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
qushui 2003-10-13
  • 打赏
  • 举报
回复
哦,同意楼上的说法,要是真正的正确先是编码,要读取两次
1,一次获取网页的charset
2.第二次以改编码进行读取
速马 2003-10-12
  • 打赏
  • 举报
回复
WebClient client = new WebClient();
byte[] data = client.DownoadData(url);
string str = System.Text.Encoding.Default.GetString(data);

//这边没有装VS.NET,大概就是上面那样了,自己试试看...
ArLi2003 2003-10-12
  • 打赏
  • 举报
回复
建议你先用ASCII 载入,然后寻找 http-equiv="Content-Type" 一行再根据 charset= 得出编码再用相应的方法再解一次。
jp311 2003-10-12
  • 打赏
  • 举报
回复
楼上的方法也不中呀,看来还是根据charset靠的住些
jp311 2003-10-11
  • 打赏
  • 举报
回复
StreamReader reader=new StreamReader(data, Encoding.GetEncoding("GB2312"));
可以解决中文编码的网站,不知道有什么办法可以得到网页的字符编码???

110,536

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧