图片视频上传,下载方法

 1 /// <summary>
 2 /// 图片,视频,其他资源上传
 3 /// </summary>
 4 /// <param name="FileName,">文件名称</param>
 5 /// <param name="typestyle">上传类型</param>
 6 /// <param name="j">保存文件名随机数标识</param>
 7 public static string FileUpdate(HttpFileCollection files, string FileName, int typestyle,int j)
 8 {
 9 if (FileName == null)
10 {
11 return string.Empty;
12 }
13 string fileExt = Path.GetExtension(FileName);
14 //读取存储路劲地址
15 string UploadPath = ConfigVal("UploadPath");
16 string path = null;
17 if (typestyle == 1)//图片上传
18 {
19 if (!(fileExt == ".jpg" || fileExt == ".jpeg" || fileExt == ".bmp" || fileExt == ".gif" || fileExt == ".png"))
20 {
21 return string.Empty;
22 }
23 path = string.Format("{0}/{1}{2}", UploadFolder(UploadType.PreImg), DateTime.Now.ToString("yyyyMMddHHmmssfff"), fileExt);
24 }
25 else if (typestyle == 2)//视频
26 {
27 if (!(fileExt == ".mp4" || fileExt == ".3gp" || fileExt == ".wmv" || fileExt == ".mpg" || fileExt == ".avi"))
28 {
29 //不是视频
30 return string.Empty;
31 }
32 path = string.Format("{0}/{1}{2}", UploadFolder(UploadType.Video), DateTime.Now.ToString("yyyyMMddHHmmssfff"), fileExt);
33 }
34 else
35 {
36 path = string.Format("{0}/{1}{2}", UploadFolder(UploadType.Resource), DateTime.Now.ToString("yyyyMMddHHmmssfff"), fileExt);
37 }
38 
39 //3.获得网站的绝对路径 存储文件
40 string fileName = string.Format("{0}/{1}", UploadPath, path);
41 files[j].SaveAs(fileName);
42 return path;
43 }
图片,视频,上传
 1  /// <summary>
 2         /// 文件下载
 3         /// </summary>
 4         /// <param name="url">图片网络地址</param>
 5         /// <param name="localfile">下载本地文件夹</param>
 6         /// <param name="filename">图片名称</param>
 7         /// <returns></returns>
 8         public static bool Download(string url, string localfile, string filename, string format=".pdf")
 9         {
10             bool flag = false;
11             if (url.Contains(",") || url.Contains("") || filename.Contains("/"))
12             {
13                 return flag;
14             }
15             try
16             {
17                 ServicePointManager.SecurityProtocol = SecurityProtocolType.Ssl3
18                                        | SecurityProtocolType.Tls
19                                        | (SecurityProtocolType)0x300 //Tls11
20                                        | (SecurityProtocolType)0xC00; //Tls12
21 
22                 HttpWebRequest request;
23                 if (url.StartsWith("https", StringComparison.OrdinalIgnoreCase))
24                 {
25                     ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult);
26                     request = WebRequest.Create(url) as HttpWebRequest;
27                     request.ProtocolVersion = HttpVersion.Version10;
28                 }
29                 else
30                 {
31                     request = WebRequest.Create(url) as HttpWebRequest;
32                 }
33 
34                 request.Method = "GET";
35                 request.Accept = "text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8";
36                 request.Headers.Add("Accept-Language", "zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3");
37                 request.UserAgent = "Mozilla/5.0 (Windows NT 5.2; rv:12.0) Gecko/20100101 Firefox/12.0";
38                 WebResponse response = request.GetResponse();
39                 //文件流获取图片操作
40                 Stream reader = response.GetResponseStream();
41                 string path = localfile + "/" + filename + format;        //图片路径命名 
42                 if (!System.IO.Directory.Exists(localfile))
43                 {
44                     System.IO.Directory.CreateDirectory(localfile);
45                 }
46                 FileStream writer = new FileStream(path, FileMode.OpenOrCreate, FileAccess.Write);
47                 byte[] buff = new byte[512];
48                 int c = 0;                                           //实际读取的字节数   
49                 while ((c = reader.Read(buff, 0, buff.Length)) > 0)
50                 {
51                     writer.Write(buff, 0, c);
52                 }
53                 //释放资源
54                 writer.Close();
55                 writer.Dispose();
56                 reader.Close();
57                 reader.Dispose();
58                 response.Close();
59                 //下载成功
60                 flag = true;
61             }
62             catch (Exception ex)
63             {
64                 return false;
65                 throw ex;
66             }
67             return flag;
68         }
69 
70         private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors)
71         {
72             return true; //总是接受  
73         }
图片下载新方法

 

posted @ 2021-01-15 09:30  情殇メ传说  阅读(114)  评论(0编辑  收藏  举报