码迷,mamicode.com
首页 > 其他好文 > 详细

下载远程文件

时间:2017-05-22 12:03:12      阅读:199      评论:0      收藏:0      [点我收藏+]

标签:point   ati   cep   web   http   rar   null   sys   logs   

 1     public static bool DownRemoteFile(string url, string filepath)
 2         {
 3             ServicePointManager.DefaultConnectionLimit = 200;
 4             try
 5             {
 6                 //对远程文件发送一个请求
 7                 HttpWebRequest webReq = HttpWebRequest.CreateHttp(url);
 8                 webReq.ServicePoint.Expect100Continue = false;
 9                 webReq.ServicePoint.UseNagleAlgorithm = false;
10                 webReq.ServicePoint.ConnectionLimit = 65500;
11                 webReq.AllowWriteStreamBuffering = false; webReq.Proxy = null;
12                 
13                 //接收远程WEB服务器发回的响应
14                 WebResponse webRes = webReq.GetResponse();
15             
16 
17           
18                 MemoryStream ms = new MemoryStream();
19                 webRes.GetResponseStream().CopyTo(ms);
20                 //获取文件长度
21                 long fileLength = webRes.ContentLength;
22                 byte[] bufferbyte = ms.ToArray();
23              
24 
25                 //判断存储路径每一个节点是否存在
26                 if (!System.IO.File.Exists(filepath))
27                 {
28                     string[] dirArray = filepath.Split(\\);
29                     string temp = string.Empty;
30                     for (int i = 0; i < dirArray.Length - 1; i++)
31                     {
32                         temp += dirArray[i].Trim() + "\\";
33                         if (!Directory.Exists(temp))
34                             Directory.CreateDirectory(temp);
35                     }
36                 }
37                 //创建一个文件流,将处理的文件流写入磁盘
38                 FileStream fs = new FileStream(filepath, FileMode.OpenOrCreate, FileAccess.ReadWrite);
39                 fs.Write(bufferbyte, 0, bufferbyte.Length);
40                 ms.Close();
41                 fs.Close();
42 
43                 if (!System.IO.File.Exists(filepath))
44                 {
45                     return false;
46                 }
47                 else
48                 {
49                     return true;
50                 }
51             }
52             catch (Exception ex)
53             {
55 return false; 56 } 57 }

 

下载远程文件

标签:point   ati   cep   web   http   rar   null   sys   logs   

原文地址:http://www.cnblogs.com/vipitsoft/p/6888465.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!