当前位置: 首页 > 图文教程 > 网络编程 > ASP > 把文章内容中涉及到的图片自动保存到本地服务器

ASP
揭开ASP神秘面纱(2)
揭开ASP神秘面纱(3)
揭开ASP神秘面纱(4)
揭开ASP神秘面纱(5)
让网站活起来(1)
让网站活起来(2)
让网站活起来(3)
让网站活起来(4)
如何在ASP.Net中取得环境变量的值
将HTML表单数据存储为XML格式(1)
将HTML表单数据存储为XML格式(2)
将HTML表单数据存储为XML格式(3)
ASP.Net调试之三板斧:第一招
ASP.Net调试之三板斧:第二招
ASP.Net调试之三板斧:第三招
新闻更新系统(1)
新闻更新系统(2)
新闻更新系统(3)
ubb风格论坛中自您上次来后有新的贴子的功能的asp实现
一个新版本的ubb转化程序

ASP 中的 把文章内容中涉及到的图片自动保存到本地服务器


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 164 ::
收藏到网摘: n/a

 

<%
const savepath="tempfile/"

function myreplace(str)
newstr=str
set objregEx = new RegExp
objregEx.IgnoreCase = true
objregEx.Global = true
objregEx.Pattern = "http://(.+?)\.(jpg|gif|png|bmp)"
set matches = objregEx.execute(str)
for each match in matches
newstr=replace(newstr,match.value,saveimg(match.value))
next
myreplace=newstr
end function

function saveimg(url)
temp=split(url,".")
randomize
ranNum=int(90000*rnd)+10000
filename=year(now)&month(now)&day(now)&hour(now)&minute(now)&second(now)&ranNum&"."&temp(ubound(temp))
set xmlhttp=server.createobject("Microsoft.XMLHTTP")
xmlhttp.open "get",url,false
xmlhttp.send
if xmlhttp.status<>200 then
 saveimg=""
else
 img=xmlhttp.ResponseBody
 set objAdostream=server.createobject("ADODB.Stream")
 objAdostream.Open()
 objAdostream.type=1
 objAdostream.Write(img)
 objAdostream.SaveToFile(server.mappath("./"&savepath&filename))
 objAdostream.SetEOS
 set objAdostream=nothing
 saveimg=savepath&filename
end if
set xmlhttp=nothing
end function
%>