同意csShooter(Sharp Shooter) 参考:http://msdn2.microsoft.com/en-us/library/781fwaz8.aspx#Mtps_DropDownFilterText// Create a new WebClient instance. WebClient myWebClient = new WebClient(); // Download home page data. Console.WriteLine("Accessing {0} ...", uriString); // Open a stream to point to the data stream coming from the Web resource. Stream myStream = myWebClient.OpenRead(uriString);Console.WriteLine("\nDisplaying Data :\n"); StreamReader sr = new StreamReader(myStream); Console.WriteLine(sr.ReadToEnd()); // Close the stream. myStream.Close();
在button事件里写代码,参考代码如下:(不要忘了加引用哦)
using System.Net;
using System.IO;
private void button1_Click(object sender, EventArgs e)
{
WebRequest request = WebRequest.Create(
"http://www.google.com");
request.Credentials = CredentialCache.DefaultCredentials;
WebResponse response = request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = "";
string strTemp;
while ( (strTemp = reader .ReadLine ()) != null )
{
listBox1.Items.Add(strTemp );
}
reader.Close();
response.Close(); }
参考:http://msdn2.microsoft.com/en-us/library/781fwaz8.aspx#Mtps_DropDownFilterText// Create a new WebClient instance.
WebClient myWebClient = new WebClient();
// Download home page data.
Console.WriteLine("Accessing {0} ...", uriString);
// Open a stream to point to the data stream coming from the Web resource.
Stream myStream = myWebClient.OpenRead(uriString);Console.WriteLine("\nDisplaying Data :\n");
StreamReader sr = new StreamReader(myStream);
Console.WriteLine(sr.ReadToEnd());
// Close the stream.
myStream.Close();
HttpWebResponse HttpWResp = (HttpWebResponse)HttpWReq.GetResponse();
Stream str = HttpWResp.GetResponseStream();
经过测试,上面的方法显示的都是乱码,这又如何解决呢??
....
Stream dataStream = response.GetResponseStream();
Encoding webEncode = Encoding.UTF8;
StreamReader reader = new StreamReader(dataStream, webEncode);
.....
经过测试,上面的方法显示的都是乱码,这又如何解决呢??------------------------------------------------------------------
请问您测试的是哪个网址,可否贴出来看看.
楼主应该先打开个新ie窗口,将网址输进去,回车要是本来出来的就是乱码,那出现乱码才是正常的啊!!!!!!!!!但这并不意味着是错的,因为这一般是一些二进制的信息, 你要知道它的格式,经过处理后, 才可以解析出内容.
StreamReader reader = new StreamReader(dataStream, webEncode);
这样做以后还是乱,OMG!!
问题是我如何知道请求网页的编码呢??
后来觉得这是蛋在鸡之先的回答,而且部分网页也是没有这个,使用它服务器上的默认编码...可能像google抓取网页的时候也是比特流,正确显示的职能交由客户的ie设置。
http://topic.csdn.net/t/20050531/15/4048803.html
http://blog.tom.com/blog/read.php?bloggerid=91109&blogid=9937c/c++:
http://www.blogcn.com/user59/vilmali/blog/28601505.html
http://community.csdn.net/Expert/topic/5076/5076413.xml?temp=.3574488
using System.IO;
private void button1_Click(object sender, EventArgs e)
{
WebRequest request = WebRequest.Create(
"http://www.google.com");
request.Credentials = CredentialCache.DefaultCredentials;
WebResponse response = request.GetResponse();
Stream dataStream = response.GetResponseStream();
StreamReader reader = new StreamReader(dataStream);
string responseFromServer = "";
string strTemp;
while ( (strTemp = reader .ReadLine ()) != null )
{
listBox1.Items.Add(strTemp );
}
reader.Close();
response.Close(); }