C#.net访问web,并处理返回值简例

C#.net访问web,并处理返回值简例                                     

1。根据链接访问web
需要导入的包(不知道是不是应该这么说,以前用JAVA的,说习惯了)
System.Net

具体代码:
String url = "http://127.0.0.1/CORID/Login.asp?MailAddress=" + textBox1.Text.Trim() +
                    "&Password=" + textBox2.Text.Trim();
WebRequest wrt  = WebRequest.Create(url);    //访问该链接
WebResponse wrs = wrt.GetResponse();         //获得返回值
s = wrs.GetResponseStream();                           //获得流(流操作还是玩不太好)
byte[] rsByte = new byte[1024];                              //字节数组,用来存流里面数据的
try
{
  fs.Read(rsByte,0,1024);                //这里没玩明白,不知道怎么取得流的长度,但是要用这个read方法没错
  MessageBox.Show(System.Text.Encoding.UTF8.GetString(rsByte,0,rsByte.Length));      //看一眼结果^_^
}
catch (Exception exp)
{
  MessageBox.Show(this,exp.ToString());
}

简单总结:
WebRequest 用来访问链接,WebResponse 用来获得返回值,把返回的值以流的形式获得,再把它读出来,怎么读??没理解太好。等流能用个差不多了再到这里记录一下~

2。提交form到web(这个蛮神奇,用着也顺手,耶~)
需要导入的包:
System.Net
System.Collections.Specialized

具体代码:
NameValueCollection nvc = new NameValueCollection();
nvc.Add("MailAddress",textBox1.Text.Trim());      //这里是装入表单中的项的,就是parameter(单词对不?)
nvc.Add("Password",textBox2.Text.Trim());

WebClient wc = new WebClient();
byte[] rs = wc.UploadValues("http://127.0.0.1/CORID/Login.asp","post",nvc);
//这里就是关键啦~第一个参数是处理form的地址,也就是action对应的
//第二个参数是提交类型(术语说不好,理解万岁),这里用"post"
//第三个就是表单中各项的那个集合啦~
//最爽的是这个提交过去,返回的值直接就放在一个byte数组里了,省得自己去从流往外读,耶~

System.Text.Encoding.UTF8.GetString(rs,0,rs.Length);
//用上面介个方法可以把byte数组里东西搞成string,很方便,哈哈,其中UTF8是编码类型,可以换成别的,感觉蛮方便~

没了,哇哼哼~ 

   

posted @ 2017-06-13 18:22  sky20080101  阅读(144)  评论(1编辑  收藏  举报