我看到了许多示例,但所有示例一次都将它们缓慢地读入字节数组或256个字符。为什么?
仅将结果Stream值转换为可以解析的字符串是否明智?
我看到了许多示例,但所有示例一次都将它们缓慢地读入字节数组或256个字符。为什么?
仅将结果Stream值转换为可以解析的字符串是否明智?
Answers:
您应该StreamReader在流周围创建一个,然后调用ReadToEnd。
您应该考虑WebClient.DownloadString改为致电。
User-Agent。
<a href=不是原来的,而是<A href=。那还是和编码有关User-Agent吗?
WebClient并HttpWebRequest使用不涉及浏览器的原始HTTP。如果不同的浏览器显示不同的View Source,那就是一个User-Agent问题。
您可以使用StreamReader.ReadToEnd(),
using (Stream stream = response.GetResponseStream())
{
StreamReader reader = new StreamReader(stream, Encoding.UTF8);
String responseString = reader.ReadToEnd();
}
StreamReader第二个参数Encoding.UTF8。刚开始查看MS文档时没有注意到这一点
GetResponse and GetResponseStream可以抛出异常