使用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,怎么设置证 ...
随机推荐
- 程序的内存分配 C\C++
原文:http://blog.csdn.net/oohaha_123/article/details/24460425 程序的内存分配 一个由C/C++编译的程序占用的内存分为以下几个部分 1.栈区( ...
- 5个基于css3超炫的鼠标滑动按钮动画
今天给大家分享5个基于css3超炫的鼠标滑动按钮动画.这5个按钮鼠标经过的时候有超炫的动画效果.这5个按钮适用浏览器:360.FireFox.Chrome.Safari.Opera.傲游.搜狗.世界之 ...
- c++ 设计模式4 (Strategy)
3.2 Strategy (策略模式) 动机:在软件构建过程中,某些对象使用的算法可能多种多样,经常改变,如果将这些算法都编码到对象中,将会使对象变得异常复杂,而且有时候支持不使用或不常使用的算法也是 ...
- K - 4 Values whose Sum is 0(中途相遇法)
K - 4 Values whose Sum is 0 Crawling in process... Crawling failed Time Limit:9000MS Memory Limi ...
- Java基础知识强化之IO流笔记79:NIO之 SocketChannel
1. Java NIO中的SocketChannel是一个连接到TCP网络套接字的通道.可以通过以下2种方式创建SocketChannel: 打开一个SocketChannel并连接到互联网上的某台服 ...
- 将Winform程序快速转换为在浏览器中运行的程序
http://www.codeproject.com/Articles/31429/Embedding-a-NET-WinForms-Application-in-an-Interne 详见以上文章. ...
- 关于automatic_Panoramic_Image_Stitching_using_Invariant_features 的阅读笔记(2)
接上一篇: http://www.cnblogs.com/letben/p/5446074.html#3538201 捆绑调整 (好开心有同学一起来看看这些问题,要不然就是我自己的话,我应该也不会看的 ...
- C#中XML与对象之间的序列化、反序列化
直接上代码: using System; using System.IO; using System.Text; using System.Xml; using System.Xml.Serializ ...
- VMware系统运维(十九)部署虚拟化桌面 Horizon View 5.2 通过手持设备进行连接测试
1.打开连接程序View,设置连接服务器的IP地址,点击连接,在这里输入连接的用户名密码,点击"连接" 2.正在载入桌面中...... 3.连接成功,个人建议,手机支持OTG的可以 ...
- Linux命令之cut
cut:文件的每一行剪切字节.字符和字段并将这些字节.字符和字段写至标准输出.如果不指定 File 参数,cut 命令将读取标准输入.必须指定 -b.-c 或 -f 标志之一. 主要参数: -b(by ...
