山那边是海 发表于 2015-1-16 22:50:21

ASP.NET教程之网高低载和上传数据(一) Montaque(原作...

c语言的编译器,几乎是所有新平台都有的。因此从这点上看,c语言的程序,比其他任何语言更加容易跨平台。网高低载和上传数据(一)Montaque(原作)

偶然候,处于程序的必要,程序请求静态的从收集上更新数据,最多见的好比从数据中央下载或上传企业外部数据大概材料;偶然候,想做一些相似呆板人的事情,让程序主动猎取IntraNet亦或InterNet上的资本,多是旧事、图片、和你想失掉的……这个时分就必要编一些小程序。

明天我次要先容一下在.NET中怎样猎取收集上的数据,固然能够是局域网,乃至Local文件体系。使用WebClient类,轻而易举!



关于WebClient:

在MSDN中,如许形貌WebClient类:

“供应向URI标识的资本发送数据和从URI标识的资本吸收数据的大众办法”,默许情形下,.NET框架撑持以http:、https:和file:计划标识符开首的URI。是否是封装了良多我们想要完成的历程?呵呵。看一下它的次要成员:

成员范例形貌
BaseURI属性以后的URL地点
DownloadData办法从一个URI下载数据,以字节数组的情势前往
DownloadFile办法从一个URI下载数据,保留为当地文件
OpenRead办法以流的情势翻开并实行读操纵
OpenWrite办法翻开一个流用于向URI写数据
UploadData办法向URI上传数据
UploadFile办法把一个当地文件上载到制订URI
UploadValues办法NameValueCollection发送到资本并前往包括任何呼应的字节数组

详细看一下怎样下载文件或数据:

WebClient供应了也许三种体例从网高低载数据:

1.DownloadData

从资本下载数据并前往字节数组。

PublicFunctionDownloadData(ByValaddressAsString)AsByte()
承受一个参数,address是从中下载数据的URI。注重前往的是一个字节数组,我在之前的文章中提到过良多次,我们能够很复杂的转换为我们必要的格局。
看一个代码:
DimwcAsNewSystem.Net.WebClient()‘跟收集相干的类一样平常都在System.Net下
DimhtmlAsString=Encoding.ASCII.GetString(wc.DownloadData("http:www.csdn.net"))
Debug.WriteLine(html)
你就会失掉很长的一个String,实践上就是CSDN第一页的源代码。

2.

DownloadFile

从具有指定URI的资本将数据下载到当地文件

PublicSubDownloadFile(ByValaddressAsString,ByValfileNameAsString)
address:从中下载数据的URI。

FileName:要吸收数据的当地文件的称号。

利用也很复杂:
DimwcAsNewSystem.Net.WebClient()
wc.DownloadFile("http://www.csdn.net/images/ad/vsnet_120.gif","c:        est.gif")
乐成运转后,当地机的C:会多出一个小图片,就是VS.NET4CD的告白。

3.OpenRead

为从具有指定URI的资本下载的数据翻开一个可读的流。

PublicFunctionOpenRead(ByValaddressAsString)AsStream

参数

address从中下载数据的URI。

流的观点熟习吗?不熟的话看一下我之前的文章吧,很基础的操纵都有。

上面的示例翻开由uriString标识的资本并将了局显现在体系把持台上。请注重,由OpenRead前往的Stream在读取完数据以后将被封闭。


DimmyWebClientAsNewSystem.Net.WebClient()
DimuriStringAsString="http://www.csdn.net"
Console.WriteLine("Accessing{0}...",uriString)
DimmyStreamAsStream=myWebClient.OpenRead(uriString)
Console.WriteLine(ControlChars.Cr+"DisplayingData:"+ControlChars.Cr)
DimsrAsNewStreamReader(myStream)
Console.WriteLine(sr.ReadToEnd())
myStream.Close()

上传数据
有下载一定有上传,一样对应的WebClient也有良多中上传数据的办法,除跟下面对应的UploadData、UploadFile、OpenWrite外另有一种UploadValues,UploadValues将NameValueCollection发送到资本并前往包括任何呼应的字节数组,能够用于那些有表单的网页。
例子就不写了,MSDN中ms-help://MS.VSCC/MS.MSDNVS.2052/cpref/html/frlrfsystemnetwebclientclasstopic.htm都有具体的先容,在此不再赘述。

总结:
复杂先容了WebClient的次要办法和使用,实践上WebClient能够完成一些对照复杂的操纵,试想,假如服务器请求我们输出暗码和用户名才干会见怎样办?大概其他的编程细节要处置?那就是我们下次先容的WebRequest和WebResponse。
<
http://www.ckuyun.com/

可怜的程序员,还是逃不出移植的命运!

乐观 发表于 2015-1-20 05:20:17

虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。

爱飞 发表于 2015-1-20 05:20:17

主流网站开发语言之PHP:PHP的全名非常有趣,它是一个巢状的缩写名称——“PHP:HypertextPreprocessor”,打开缩写还是缩写。PHP是一种HTML内嵌式的语言(就像上面讲的ASP那样)。而PHP独特的语法混合了C,Java,Perl以及PHP式的新语法。它可以比CGI或者Perl更快速地执行动态网页。

第二个灵魂 发表于 2015-1-28 18:30:29

ASP.Net和ASP的最大区别在于编程思维的转换,而不仅仅在于功能的增强。ASP使用VBS/JS这样的脚本语言混合html来编程,而那些脚本语言属于弱类型、面向结构的编程语言,而非面向对象。

冷月葬花魂 发表于 2015-2-5 22:27:46

主流网站开发语言之CGI:CGI就是公共网关接口(CommonGatewayInterface)的缩写。它是最早被用来建立动态网站的后台技术。这种技术可以使用各种语言来编写后台程序,例如C,C++,Java,Pascal等。

山那边是海 发表于 2015-2-13 22:57:00

代码的可重用性差:由于是面向结构的编程方式,并且混合html,所以可能页面原型修改一点,整个程序都需要修改,更别提代码重用了。

不帅 发表于 2015-3-4 03:01:19

Asp.net脚本的出现,为ASP空间带来了更高的稳定性,同时也为程序员建站提供更高环境!

莫相离 发表于 2015-3-11 15:39:35

代码逻辑混乱,难于管理:由于ASP是脚本语言混合html编程,所以你很难看清代码的逻辑关系,并且随着程序的复杂性增加,使得代码的管理十分困难,甚至超出一个程序员所能达到的管理能力,从而造成出错或这样那样的问题。

再见西城 发表于 2015-3-19 01:27:57

虽然在形式上JSP和ASP或PHP看上去很相似——都可以被内嵌在HTML代码中。但是,它的执行方式和ASP或PHP完全不同。在JSP被执行的时候,JSP文件被JSP解释器(JSPParser)转换成Servlet代码,然后Servlet代码被Java编译器编译成.class字节文件,这样就由生成的Servlet来对客户端应答。所以,JSP可以看做是Servlet的脚本语言(ScriptLanguage)版。

若天明 发表于 2015-3-27 01:12:09

ASP是把代码交给VBScript解释器或Jscript解释器来解释,当然速度没有编译过的程序快了。
页: [1]
查看完整版本: ASP.NET教程之网高低载和上传数据(一) Montaque(原作...