成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

C# HTTPWebRequest對象淺談

開發(fā) 后端
這里介紹用C# HTTPWebRequest對象進(jìn)行請求,用HTTPWebResponse對象接收響應(yīng)的結(jié)果,最后用TextStream對象來提取我們想要的信息,并在控制臺打印出來。

本文向大家介紹C# HTTPWebRequest對象,可能好多人還不知道C# HTTPWebRequest對象,沒有關(guān)系,看完本文你肯定有不少收獲,希望本文能教會你更多東西。

本文利用C#和.NET提供的類來輕松創(chuàng)建一個抓取網(wǎng)頁內(nèi)容源代碼的程序 。HTTP是WWW進(jìn)行數(shù)據(jù)訪問最基本的協(xié)議之一,在.NET的基本類型庫類中提供了兩個對象類:HTTPWebRequest和HTTPWebResponse,分別用來向某資源發(fā)送請求和獲得響應(yīng)。為了得到一個資源的內(nèi)容,我們先指定一個想要抓取的URL地址,用C# HTTPWebRequest對象進(jìn)行請求,用HTTPWebResponse對象接收響應(yīng)的結(jié)果,最后用TextStream對象來提取我們想要的信息,并在控制臺打印出來。

下面就是看看如何實現(xiàn)這樣的功能:

第一步:打開VS.NET,點“文件”-“新建”-“項目”,項目類型選擇“Visual C#項目”,模板選“Windows應(yīng)用程序”,

第二步:在Form1里加入Label1,Button1,TextBox1,TextBox2四個控件,TextBox2的Multiline屬性改為True,

第三步:在Form1窗體上點擊右鍵,選“查看代碼”,然后在最頂端輸入:

  1. using System.IO;  
  2. using System.Net;  
  3. using System.Text;  
  4. private void button1_Click(object sender, System.EventArgs e)  
  5. {  

括號之間輸入下面的代碼:

  1. byte[] buf = new byte[38192];  
  2. HttpWebRequest request = (HttpWebRequest)  
  3. WebRequest.Create(textBox1.Text);  
  4. HttpWebResponse response = (HttpWebResponse)  
  5. request.GetResponse();  
  6. Stream resStream = response.GetResponseStream();  
  7. int count = resStream.Read(buf, 0, buf.Length);  
  8. textBox2.Text = Encoding.Default.GetString(buf, 0,  
  9. count);  
  10. resStream.Close(); 

第四步:點“Save all”按鈕,按“F5”運行應(yīng)用程序,在“請輸入URL地址:”后面的單行文本框里輸入http://lucky.myrice.com/down.htm,點擊“得到 HTML 代碼”按鈕,就可以看到該地址的代碼了!

下面,我們就對上面的程序做一個分析:

上面的這個程序的功能是抓取網(wǎng)頁http://lucky.myrice.com/down.htm的內(nèi)容,并在多行文本框里顯示出HTML代碼,由于返回的數(shù)據(jù)是字節(jié)類型的,因此,我們創(chuàng)建一個名為buf的字節(jié)類型的數(shù)組變量來存儲請求返回來的結(jié)果,其中數(shù)組的大小與我們要請求返回的數(shù)據(jù)大小有關(guān)系。首先,我們實例化C# HTTPWebRequest對象,使用WebRequest類的靜態(tài)方法Create(),該方法的字符串參數(shù)就是我們要請求頁面的URL地址,由于Create()方法返回的是WebRequest類型的,我們必須對它進(jìn)行造型(即類型轉(zhuǎn)換)成HttpWebRequest類型,再賦給request變量。一旦我們建立了C# HTTPWebRequest對象,就可以使用它的GetResponse()方法來返回一個WebResponse對象,然后再造型成HttpWebResponse對象賦給response變量。現(xiàn)在,就可以使用response對象的GetResponseStream()方法來得到響應(yīng)的文本流了,最后用Stream對象的Read()方法把返回的響應(yīng)信息放到我們最初創(chuàng)建的字節(jié)數(shù)組buf中,Read()有3個參數(shù),分別是:要放入的字節(jié)數(shù)組,字節(jié)數(shù)組的開始位置,字節(jié)數(shù)組的長度。最后把字節(jié)轉(zhuǎn)換成字符串,注意:這里采用的采用的是Default編碼,它使用默認(rèn)的編碼方式,我們就不用再進(jìn)行字符編碼之間的轉(zhuǎn)換了。

【編輯推薦】

  1. C# this關(guān)鍵字詳解
  2. C#調(diào)用析構(gòu)方法詳解
  3. C#釋放托管資源簡單描述
  4. C#單路代理簡單分析
  5. C#文法產(chǎn)生式概述
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-08-12 11:24:25

C# String對象

2009-08-31 09:37:09

C# Employee

2009-08-19 17:12:18

C# Connecti

2009-08-18 09:06:41

C#對象和集合

2009-09-02 16:36:37

C#調(diào)用Excel對象

2009-07-31 17:51:27

C#對象初始化

2009-09-07 13:41:48

C# HttpWebR提交數(shù)據(jù)方式

2009-05-08 09:46:37

微軟C#集合對象

2009-08-20 18:30:33

C# ReaderWr

2011-09-21 10:56:31

C#結(jié)構(gòu)

2009-08-03 15:06:43

C# Stack對象C# Queue對象

2009-08-26 15:28:52

C#對象集合初始化器

2009-08-26 13:15:38

C#選擇控制

2009-08-20 10:24:52

C#開發(fā)WinForm

2009-08-14 17:58:05

C#接口方法

2009-08-25 16:16:43

C# oledbcon

2009-08-26 15:46:01

C#匿名類型

2009-08-06 15:30:23

C#類型系統(tǒng)

2009-08-07 11:26:53

C#數(shù)組結(jié)構(gòu)

2009-08-10 10:04:25

C#抽象類C#接口
點贊
收藏

51CTO技術(shù)棧公眾號

主站蜘蛛池模板: 一级做a爰片久久毛片免费看 | 欧美一级欧美一级在线播放 | 日韩一级免费大片 | 麻豆精品国产91久久久久久 | 日日爱夜夜操 | 免费看黄视频网站 | 人人做人人澡人人爽欧美 | 日本中文字幕在线视频 | 综合色播 | 国产精品视频久久 | 91久久精品国产91久久性色tv | 亚洲欧美日韩在线不卡 | 欧美精品一区二区三区在线 | 久久久91 | 午夜小电影 | 欧美成视频 | 国产激情91久久精品导航 | 视频在线一区二区 | 一区二区三区免费在线观看 | 日韩在线免费视频 | 黄色视频a级毛片 | 欧美伊人久久久久久久久影院 | 国产一区二区 | 91亚洲国产| 国偷自产av一区二区三区 | 中文字幕国产高清 | 欧美一级免费 | 欧美一区二区在线观看 | 中文字幕免费中文 | 欧美精品在线免费 | 一本色道精品久久一区二区三区 | 成人免费毛片在线观看 | 欧美在线观看一区 | 男女啪啪高潮无遮挡免费动态 | 久久精品亚洲 | 欧美日韩亚洲视频 | 亚洲国产成人一区二区 | 91精品国产一区二区三区香蕉 | 国内精品久久精品 | 亚洲一区国产精品 | 午夜免费视频 |