远程下载图片到本地的方法
2011-01-25 16:18
351 查看
前段时间在网上搜得,但是一直没有用到,这里记录下,备今后所用。
/// <summary>
/// 远程下载图片保存到本地
/// </summary>
/// <param name="savedir"></param>
/// <param name="imgpath"></param>
/// <returns></returns>
public string DownRemotingImg(string savedir,string imgpath)
{
if (string.IsNullOrEmpty(imgpath))
return string.Empty;
else
{
string imgName = string.Empty;
string imgExt = string.Empty;
string saveFilePath = string.Empty;
imgName = imgpath.Substring(imgpath.LastIndexOf("/"), imgpath.Length - imgpath.LastIndexOf("/"));
imgExt = imgpath.Substring(imgpath.LastIndexOf("."), imgpath.Length - imgpath.LastIndexOf("."));
saveFilePath = Server.MapPath(savedir);
if(!Directory.Exists(saveFilePath))
Directory.CreateDirectory(saveFilePath);
try
{
WebRequest wreq = WebRequest.Create(imgpath);
wreq.Timeout = 10000;
HttpWebResponse wresp = (HttpWebResponse)wreq.GetResponse();
Stream s = wresp.GetResponseStream();
System.Drawing.Image img;
img = System.Drawing.Image.FromStream(s);
switch (imgExt.ToLower())
{
case ".gif":
img.Save(saveFilePath + imgName, ImageFormat.Gif);
break;
case ".jpg":
case ".jpeg":
img.Save(saveFilePath + imgName, ImageFormat.Jpeg);
break;
case ".png":
img.Save(saveFilePath + imgName, ImageFormat.Png);
break;
case ".icon":
img.Save(saveFilePath + imgName, ImageFormat.Icon);
break;
case ".bmp":
img.Save(saveFilePath + imgName, ImageFormat.Bmp);
break;
}
img.Dispose();
s.Dispose();
return savedir + imgName;
}
catch
{
return imgpath;
}
}
}
需要的命名空间未写出,放程序里解析可得。
/// <summary>
/// 远程下载图片保存到本地
/// </summary>
/// <param name="savedir"></param>
/// <param name="imgpath"></param>
/// <returns></returns>
public string DownRemotingImg(string savedir,string imgpath)
{
if (string.IsNullOrEmpty(imgpath))
return string.Empty;
else
{
string imgName = string.Empty;
string imgExt = string.Empty;
string saveFilePath = string.Empty;
imgName = imgpath.Substring(imgpath.LastIndexOf("/"), imgpath.Length - imgpath.LastIndexOf("/"));
imgExt = imgpath.Substring(imgpath.LastIndexOf("."), imgpath.Length - imgpath.LastIndexOf("."));
saveFilePath = Server.MapPath(savedir);
if(!Directory.Exists(saveFilePath))
Directory.CreateDirectory(saveFilePath);
try
{
WebRequest wreq = WebRequest.Create(imgpath);
wreq.Timeout = 10000;
HttpWebResponse wresp = (HttpWebResponse)wreq.GetResponse();
Stream s = wresp.GetResponseStream();
System.Drawing.Image img;
img = System.Drawing.Image.FromStream(s);
switch (imgExt.ToLower())
{
case ".gif":
img.Save(saveFilePath + imgName, ImageFormat.Gif);
break;
case ".jpg":
case ".jpeg":
img.Save(saveFilePath + imgName, ImageFormat.Jpeg);
break;
case ".png":
img.Save(saveFilePath + imgName, ImageFormat.Png);
break;
case ".icon":
img.Save(saveFilePath + imgName, ImageFormat.Icon);
break;
case ".bmp":
img.Save(saveFilePath + imgName, ImageFormat.Bmp);
break;
}
img.Dispose();
s.Dispose();
return savedir + imgName;
}
catch
{
return imgpath;
}
}
}
需要的命名空间未写出,放程序里解析可得。
相关文章推荐
- PHP下载远程图片并保存到本地方法
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- PHP下载远程图片并保存到本地方法总结
- 下载远程(第三方服务器)文件、图片,保存到本地(服务器)的方法、保存抓取远程文件、图片
- php程序获取远程图片进行下载到本地方法的总结
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- 用ASP.NET实现下载远程图片保存到本地的方法 保存抓取远程图片的方法
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- 用ASP.NET实现下载远程图片保存到本地的方法 保存抓取远程图片的方法
- php获取远程图片并下载保存到本地的方法分析
- DEDE不能远程保存(下载)图片到本地的解决方法
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- PHP实现下载远程图片保存到本地的方法
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- 用ASP.NET实现下载远程图片保存到本地的方法 保存抓取远程图片的方法
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- PHP下载远程图片并保存到本地方法总结
- 下载网页中远程图片的方法
- PHP下载远程图片的3个方法