public static int SaveImageFromWeb(string imgUrl, string path) { var aaa = Environment.CurrentDirectory; string imgName = imgUrl.ToString().Substring(imgUrl.ToString().LastIndexOf("/") + 1); path = path + "//" + imgName; //NewPicName = imgName;//获取文件的名字 string defaultType = ".jpg"; string[] imgTypes = new string[] { ".jpg", ".jpeg", ".png", ".gif", ".bmp" }; string imgType = imgUrl.ToString().Substring(imgUrl.ToString().LastIndexOf(".")); foreach (string it in imgTypes) { if (imgType.ToLower().Equals(it)) break; if (it.Equals(".bmp")) imgType = defaultType; } try { HttpWebRequest request = (HttpWebRequest)WebRequest.Create(imgUrl); request.UserAgent = "Mozilla/6.0 (MSIE 6.0; Windows NT 5.1; Natas.Robot)"; request.Timeout = 10000; WebResponse response = request.GetResponse(); Stream stream = response.GetResponseStream(); if (response.ContentType.ToLower().StartsWith("image/")) { byte[] arrayByte = new byte[1024]; int imgLong = (int)response.ContentLength; int l = 0; // CreateDirectory(path); FileStream fso = new FileStream(path, FileMode.Create); while (l < imgLong) { int i = stream.Read(arrayByte, 0, 1024); fso.Write(arrayByte, 0, i); l += i; } fso.Close(); stream.Close(); response.Close(); return 1; } else { return 0; } } catch (WebException) { return 0; } catch (UriFormatException) { return 0; } }
|
请发表评论