文件下载主要的方式可以分为三类 Socket ,Http(HttpWebRequest等类) ,ftp。
那么请问这三种协议下载有什么区别?
是不是HttpWebRequest只能用在web下面,如果是winfrom程序 需要下载文件用哪种方式比较好?

解决方案 »

  1.   

    不是吧,http和ftp,其实底层都是基于socket通信,只不过http和ftp协议格式定义不一样而已。
    下载文件,要看服务器支持什么类型的协议,如果只支持http,那你就用httpwebrequest类好了,如果支持FTP,那你就用FTP的类来下载文件。
      

  2.   

    其实三种有本质的区别,socket是基于底层协议,比如直接跟TCP/IP传输底层有关,比如用暴风影音就是用的socket方式传输数据,一般中型大小型数据须以数据流方式传时才用到socket方式传输数据,主要用一数据阶段性较差,而数据相互信赖性较强的传输
    而http是基于网页形式的传输,一般用于单个文件较多的文件传输,数据之间的依懒性不是很强,并且文件并不是很大
    而ftp方式传输数据主要为大型数据,一般网络上的下载,如迅雷之类的软件,在服务器端用的就是ftp方式传输数据