日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢(xún)
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷(xiāo)解決方案
初學(xué)者對(duì)C++語(yǔ)言簡(jiǎn)介

其主要原因是這些軟件都采用了多線程下載和斷點(diǎn)續(xù)傳技術(shù)。如果我們自己來(lái)編寫(xiě)一個(gè)類(lèi)似這樣的程序,也能夠快速的在互聯(lián)網(wǎng)上下載文件,那一定是非常愉快的事情。下面我就講一講如何利用C++語(yǔ)言編寫(xiě)一個(gè)支持多線程下載文件的程序。

網(wǎng)站建設(shè)哪家好,找成都創(chuàng)新互聯(lián)公司!專(zhuān)注于網(wǎng)頁(yè)設(shè)計(jì)、網(wǎng)站建設(shè)、微信開(kāi)發(fā)、微信平臺(tái)小程序開(kāi)發(fā)、集團(tuán)企業(yè)網(wǎng)站建設(shè)等服務(wù)項(xiàng)目。為回饋新老客戶(hù)創(chuàng)新互聯(lián)還提供了撫遠(yuǎn)免費(fèi)建站歡迎大家使用!

首先介紹一下HTTP協(xié)議, HTTP亦即Hpyer Text Transfer Protocal的縮寫(xiě),它是現(xiàn)代互聯(lián)網(wǎng)上最重要的一種網(wǎng)絡(luò)協(xié)議,超文本傳輸協(xié)議位于TCP/IP協(xié)議的應(yīng)用層,是一個(gè)面向無(wú)連接、簡(jiǎn)單、快速的C/S結(jié)構(gòu)的協(xié)議。

HTTP的工作過(guò)程大體上分連接、請(qǐng)求、響應(yīng)和斷開(kāi)連接四個(gè)步驟。C++語(yǔ)言對(duì)HTTP協(xié)議提供了良好的支持,在類(lèi)庫(kù)中提供了WebRequest和WebResponse類(lèi),這兩個(gè)類(lèi)都包含在System.Net命名空間中,利用這兩個(gè)類(lèi)可以實(shí)現(xiàn)很多高級(jí)的網(wǎng)絡(luò)功能。

本文中多線程文件下載就是利用這兩個(gè)類(lèi)實(shí)現(xiàn)的。 WebRequest和WebResponse都是抽象基類(lèi),因此在程序中不能直接作為對(duì)象使用,必須被繼承,實(shí)際使用中,可根據(jù)URI參數(shù)中的URI前綴選用它們合適的子類(lèi),對(duì)于HTTP這類(lèi)URI,HttpWebRequest和HttpWebResponse類(lèi)可以用于處理客戶(hù)程序同WEB服務(wù)器之間的HTTP通訊。

HttpWebRequest類(lèi)實(shí)現(xiàn)了很多通過(guò)HTTP訪問(wèn)WEB服務(wù)器上文件的高級(jí)功能。HttpWebRequest類(lèi)對(duì)WebRequest中定義的屬性和方法提供支持,HttpWebRequest將發(fā)送到Internet資源的公共 HTTP標(biāo)頭的值公開(kāi)為屬性。#t#

由方法或系統(tǒng)設(shè)置,常用的由屬性或方法設(shè)置的HTTP標(biāo)頭為:接受, 由Accept屬性設(shè)置, 連接, 由Connection屬性和KeepAlive屬性設(shè)置, Content-Length, 由ContentLength屬性設(shè)置, Content-Type, 由ContentType屬性設(shè)置, 范圍, 由AddRange方法設(shè)置. 實(shí)際使用中是將標(biāo)頭信息正確設(shè)置后,傳遞到WEB服務(wù)器,WEB服務(wù)器根據(jù)要求作出回應(yīng)。

HttpWebResponse類(lèi)繼承自WebResponse類(lèi),專(zhuān)門(mén)處理從WEB服務(wù)器返回的HTTP響應(yīng),這個(gè)類(lèi)實(shí)現(xiàn)了很多方法,具有很多屬性,可以全面處理接收到的互聯(lián)網(wǎng)信息。在HttpWebResponse類(lèi)中,對(duì)于大多數(shù)通用的HTTP標(biāo)頭字段,都有獨(dú)立的屬性與其對(duì)應(yīng),程序員可以通過(guò)這些屬性方便的訪問(wèn)位于HTTP接收?qǐng)?bào)文標(biāo)頭字段中的信息,本例中用到的HttpWebResponse類(lèi)屬性為:ContentLength 既接收內(nèi)容的長(zhǎng)度。

HttpWebReques對(duì)象使用GetResponse()方法時(shí),會(huì)返回一個(gè)HttpWebResponse對(duì)象,為提出HTTP返回報(bào)文信息,需要使用HttpWebResponse的GetResponseStream()方法,該方法返回一個(gè)Stream對(duì)象,可以讀取C++語(yǔ)言的報(bào)文。

如:首先定義一個(gè)Strean 對(duì)象 public System.IO.Stream ns; 然后 ns=hwr.GetResponse ().GetResponseStream ();即可創(chuàng)建Stream對(duì)象。有了以上的準(zhǔn)備知識(shí)后下面開(kāi)始設(shè)計(jì)我們的多線程互聯(lián)網(wǎng)文件的下載程序。

首先打開(kāi).Net集成開(kāi)發(fā)環(huán)境,選擇“文件”、“新建”、“項(xiàng)目”,然后選擇“Visual C#項(xiàng)目”,在向?qū)в疫吜斜砜蛑羞x中“Windows應(yīng)用程序”,輸入項(xiàng)目名稱(chēng),如本例為:httpftp,然后選擇“確定”按鈕,向?qū)ё詣?dòng)生成了一個(gè) Windows應(yīng)用程序項(xiàng)目。首先打開(kāi)窗口設(shè)計(jì)器設(shè)計(jì)應(yīng)用程序窗口,增加如下控件:

一個(gè)列表框 listBox1 三個(gè)文本標(biāo)簽 label1-label3 三個(gè)文本框 textBox1-textBox3 一個(gè)開(kāi)始接收按鈕 button1 設(shè)計(jì)好的窗口如下圖:


網(wǎng)頁(yè)題目:初學(xué)者對(duì)C++語(yǔ)言簡(jiǎn)介
地址分享:http://m.5511xx.com/article/dppcgei.html