使用HttpWebRequest以及HttpWebResponse读取Http远程文件
使用HttpWebRequest以及HttpWebResponse读取Http远程文件
| jackyhwei 发布于 2010-08-15 21:24 点击: 1054次 |
![]() 来自:博客园 |
|
在以前我们经常是使用XmlHttp来获取某个网页的内容,现在.Net时代已经来临,是否我们还要使用XMLHttp来获取呢?答案当然是不,因为微软已经帮我们写好了一些容易使用的类,而这些类就放在System.Net命名空间中。 这篇文章将会使用到两个类:System.Net.HttpWebRequest以及System.Net.HttpWebResponse,它们负责发送以及接收请求,我们现在就来试一下获取http://www.rosoo.net的首页代码,以下以代码作示例。 首先建立一个HttpWebRequest实例,我们不用使用HttpWebRequest类的构造函数,而是使用WebRequest类提供的静态方法Create,它的原型如下: public static WebRequest Create(string); 一般我们可以使用第一种方法,就是直接将网址传进去,如果协议为http或者https,它会返回一个HttpWebRequest实例: HttpWebRequest webRequest = (HttpWebRequest)WebRequest.Create( "http://www.rosoo.net"); 因为它返回的实例类型是WebRequest而不是HttpWebRequest,因此记得要进行强制类型转换. HttpWebResponse webResponse = (HttpWebResponse)webRequest.GetResponse(); 如果webResponse.StatusCode的值为HttpStatusCode.OK,表示成功,那你就可以接着读取接收到的内容了: System.IO.StreamReader streamReader = new StreamReader(stream, System.Text.Encoding.GetEncoding("GB2312")); // 建立一个流读取器,可以设置流编码,不设置则默认为UTF-8 string content = streamReader.ReadToEnd();// 读取流字符串内容 streamReader.Close();// 关闭相关对象 大功告成,我们已经将无忧脚本首页内容保存在content这个字符串变量中了,很简单吧?当然,根据需要还有更多设计方法可以选择,比如使用Socket,那还提供了System.Net.Sockets命名空间中的类,学.Net的朋友有事没事逛逛MSDN,肯定会有更多的收获。 (mugua) |
使用HttpWebRequest以及HttpWebResponse读取Http远程文件的更多相关文章
- 在Linux系统中使用Vim读写远程文件
大家好,我是良许. 今天我们讨论一个 Vim 使用技巧--用 Vim 读写远程文件.要实现这个目的,我们需要使用到一个叫 netrw.vim 的插件.从 Vim 7.x 开始,netrw.vim 就被 ...
- C#使用HttpWebRequest和HttpWebResponse上传文件示例
C#使用HttpWebRequest和HttpWebResponse上传文件示例 1.HttpHelper类: 复制内容到剪贴板程序代码 using System;using System.Colle ...
- MeteoInfoLab脚本示例:读取远程文件
利用Unidata netCDF Java库对远程文件的读取能力(OpenDAP, ADDE, THREDDS等),可以读取远程文件并绘图.脚本程序: fn = 'http://monsoondata ...
- PHP读取远程文件的三种方法
file_get_contents <?php$url = http://www.xxx.com/;$contents = file_get_contents($url);//如果出现中文乱码使 ...
- http方式获取远程文件内容
public class HttpServer { /// <summary> /// 读取远程文件的内容 /// </summary> /// <param name= ...
- c# HttpWebRequest 与 HttpWebResponse
如果你想做一些,抓取,或者是自动获取的功能,那么就跟我一起来学习一下Http请求吧.本文章会对Http请求时的Get和Post方式进行详细的说明,在请求时的参数怎么发送,怎么带Cookie,怎么设置证 ...
- .net 直接输出远程文件到浏览器和下载文件保存到本机
利用了xmlhttp,实现代码比较简单具体实现如下: 首先bin文件引入,com->microsoft xml v3.0 具体代码如下: protected void Button1_Click ...
- C#_抓包HttpWebRequest跟HttpWebResponse
1.第一招,根据URL地址获取网页信息 这招是入门第一式, 特点: 1.最简单最直观的一种,入门课程. 2.适应于明文,无需登录,无需任何验证就可以进入的页面. 3.获取的数据类型为HTML文档. ...
- c# HttpWebRequest与HttpWebResponse(转)
如果你想做一些,抓取,或者是自动获取的功能,那么就跟我一起来学习一下Http请求吧.本文章会对Http请求时的Get和Post方式进行详细的说明,在请求时的参数怎么发送,怎么带Cookie,怎么设置证 ...
随机推荐
- MySQL ALTER语法的运用方法 && 操作索引和字段
语法:alter_specification: ADD [COLUMN] create_definition [FIRST | AFTER column_name ] or ADD INDEX [in ...
- GCC 嵌入汇编代码
The format of basic inline assembly is very much straight forward. Its basic form is 基本汇编嵌入格式如下: asm ...
- 使用 sp_executesql
建议您在执行字符串时,使用 sp_executesql 存储过程而不要使用 EXECUTE 语句.由于此存储过程支持参数替换,因此 sp_executesql 比 EXECUTE 的功能更多:由于 S ...
- 通过 CALayer 代理方法绘图
#import "ViewController.h" #define WIDTH 50 #define PHOTO_HEIGHT 150 @interface ViewContro ...
- UITabBarItem编写的时候出现得图片显示异常,和有一些比较忽略的方法总结
我现在学到可分栏控制器,UITabBarController.我总结了它的层次有,UITabBarController控制并且只有以个UITanBat(他是一个UIIView的子类),UITabBar ...
- linux_cpu信息查询
查看cpu信息: [root@css-management ~]# cat /proc/cpuinfo processor : 0vendor_id : GenuineIntelcpu family ...
- javascript中Math ceil(),floor(),round()三个函数的对比
Math.ceil()执行的是向上舍入 Math.floor()执行向下舍入 Math.round()执行标准舍入 一下是一些补充: ceil():将小数部分一律向整数部分进位. 如: Math.ce ...
- jQuery选择器之可见性过滤选择器Demo
测试代码 05-可见性过滤选择器.html <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" &q ...
- hdu 4144 状态压缩dp
#include<map> #include<set> #include<cmath> #include<queue> #include<cstd ...
- [__NSCFNumber length]: unrecognized selector sent to instance 0x8b3c310
出现这种问题一般是你把int类型的数值赋给了NSString. 比如: 你定义了一个NSString类型的属性sex,但是服务端返回的sex字段实际上是NSNumber类型, 你直接把NSNumber ...
