asp.net 怎么把远程图片保存为本地文件?
2008-08-07 21:24
676 查看
using System;
using System.Text;
using System.Text.RegularExpressions;
using System.IO;
using System.Net;
namespace BookStore.Component
{
/// <summary>
///
/// </summary>
public class DownloadUtil : System.Web.UI.Page
{
public DownloadUtil(){}
private string [] GetImgTag(string htmlStr)
{
Regex regObj = new Regex("<img.+?>",RegexOptions.Compiled|RegexOptions.IgnoreCase);
string [] strAry = new string [regObj.Matches(htmlStr).Count] ;
int i = 0;
foreach (Match matchItem in regObj.Matches(htmlStr))
{
strAry[i] = GetImgUrl(matchItem.Value);
i++;
}
return strAry ;
}
private string GetImgUrl(string imgTagStr)
{
string str = "";
Regex regObj = new Regex("http://.+?.gifhttp://.+?.jpghttp://.+?.jpeghttp://.+?.bmp",
RegexOptions.Compiled|RegexOptions.IgnoreCase);
foreach (Match matchItem in regObj.Matches(imgTagStr))
{
str = matchItem.Value;
}
return str;
}
public string SaveUrlPics(string strHTML)
{
string [] imgurlAry = GetImgTag(strHTML);
try
{
for(int i=0 ; i<imgurlAry.Length ; i++)
{
WebRequest req=WebRequest.Create(imgurlAry[i]);
string preStr=System.DateTime.Now.ToString()+"_";
preStr=preStr.Replace("-","_");
preStr=preStr.Replace(":","_");
preStr=preStr.Replace(" ","_");
WebClient wc=new WebClient();
wc.DownloadFile(imgurlAry[i],Server.MapPath("images")+"/"
+preStr+imgurlAry[i].Substring(imgurlAry[i].LastIndexOf("/")+1));
strHTML=strHTML.Replace(imgurlAry[i],"images/"
+preStr+imgurlAry[i].Substring(imgurlAry[i].LastIndexOf("/")+1));
}
return strHTML;
}
catch(Exception ex)
{
return ex.Message;
}
}
}
}
using System.Text;
using System.Text.RegularExpressions;
using System.IO;
using System.Net;
namespace BookStore.Component
{
/// <summary>
///
/// </summary>
public class DownloadUtil : System.Web.UI.Page
{
public DownloadUtil(){}
private string [] GetImgTag(string htmlStr)
{
Regex regObj = new Regex("<img.+?>",RegexOptions.Compiled|RegexOptions.IgnoreCase);
string [] strAry = new string [regObj.Matches(htmlStr).Count] ;
int i = 0;
foreach (Match matchItem in regObj.Matches(htmlStr))
{
strAry[i] = GetImgUrl(matchItem.Value);
i++;
}
return strAry ;
}
private string GetImgUrl(string imgTagStr)
{
string str = "";
Regex regObj = new Regex("http://.+?.gifhttp://.+?.jpghttp://.+?.jpeghttp://.+?.bmp",
RegexOptions.Compiled|RegexOptions.IgnoreCase);
foreach (Match matchItem in regObj.Matches(imgTagStr))
{
str = matchItem.Value;
}
return str;
}
public string SaveUrlPics(string strHTML)
{
string [] imgurlAry = GetImgTag(strHTML);
try
{
for(int i=0 ; i<imgurlAry.Length ; i++)
{
WebRequest req=WebRequest.Create(imgurlAry[i]);
string preStr=System.DateTime.Now.ToString()+"_";
preStr=preStr.Replace("-","_");
preStr=preStr.Replace(":","_");
preStr=preStr.Replace(" ","_");
WebClient wc=new WebClient();
wc.DownloadFile(imgurlAry[i],Server.MapPath("images")+"/"
+preStr+imgurlAry[i].Substring(imgurlAry[i].LastIndexOf("/")+1));
strHTML=strHTML.Replace(imgurlAry[i],"images/"
+preStr+imgurlAry[i].Substring(imgurlAry[i].LastIndexOf("/")+1));
}
return strHTML;
}
catch(Exception ex)
{
return ex.Message;
}
}
}
}
相关文章推荐
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- js 下载图片与下载文件的方式一样;保存至本地 ASP.NET 方式
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- ASP保存远程图片文件到本地代码
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- 用ASP.NET实现下载远程图片保存到本地的方法 保存抓取远程图片的方法
- 用ASP.NET实现下载远程图片保存到本地的方法 保存抓取远程图片的方法
- ASP保存远程图片文件到本地代码
- ASP.NET下载远程图片保存到本地的方法、保存抓取远程图片
- 用ASP.NET实现下载远程图片保存到本地的方法 保存抓取远程图片的方法
- ASP使用xmlhttp和Adodb.Stream保存远程文件到本地
- 如何利用asp保存远程网页中的图片到本地来!
- 如何利用asp保存远程网页中的图片到本地来!
- asp.net(c#)从url网络地址下载图片或文件到本地硬盘
- ASP.NET、JAVA跨服务器远程上传文件(图片)的相关解决方案整合
- 怎么来实现asp.net抓屏并保存成图片
- asp读取远程文件并保存到本地代码