C#.net访问web,并处理返回值简例
C#.net访问web,并处理返回值简例
2007-02-28 15:52
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是编码类型,可以换成别的,感觉蛮方便~ 没了,哇哼哼~