您的位置:首页 > 编程语言 > C#

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

2007-02-28 15:52 260 查看
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是编码类型,可以换成别的,感觉蛮方便~

没了,哇哼哼~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐