C#抓取网页中出现乱码如何解决
我用的抓取代码是reader=newStreamReader(response.GetResponseStream(),Encoding.UTF8);如果是UTF8当然正...
我用的抓取代码是
reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
如果是UTF8当然正常。
但是如果是gb2312就出现乱码。
换用
reader = new StreamReader(response.GetResponseStream(), Encoding.Default);
gb2312的正常了,UTF8的又出现乱码了。
可问题在于,我没办法在抓取之前确定要抓取的网页是什么编码的。
怎样才能让程序自动选择编码或者用什么其它方法解决这个问题呢?
在抓取网页之前,我根本不知道网页编码是什么啊。
软件是给其它人用的。
--------------------------------------
重复抓取倒是个办法,可是效率太差了点吧! 展开
reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8);
如果是UTF8当然正常。
但是如果是gb2312就出现乱码。
换用
reader = new StreamReader(response.GetResponseStream(), Encoding.Default);
gb2312的正常了,UTF8的又出现乱码了。
可问题在于,我没办法在抓取之前确定要抓取的网页是什么编码的。
怎样才能让程序自动选择编码或者用什么其它方法解决这个问题呢?
在抓取网页之前,我根本不知道网页编码是什么啊。
软件是给其它人用的。
--------------------------------------
重复抓取倒是个办法,可是效率太差了点吧! 展开
1个回答
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询