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

ASP
如何编写适合FireFox的对话框?
关于处理GET方式提交的含有特殊字符的参数
对URL地址进行编码 优化2
在线管理数据库 类
用Asp备份与恢复SQL Server 数据库
计算两个时间之差的函数
asp实现sql的备份与恢复
SQL Server 存储过程的分页
sql 存储过程分页
邹建的分页存储过程改了一下
关于使用存储过程创建分页
SQL SERVER编写存储过程小工具
各种存储过程使用指南
SQL Server--怎样用ADO在SQL SERVER中建库,建表
几例在ASP存储过程的使用方法
用ASP+XML打造留言本
让 Asp 与 XML 交互
msxml3.dll 错误 ''800c0005''解决方案
MSXML4.0 版中的新增功能
关于ASP生成伪参数技巧

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 87 ::
收藏到网摘: 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
%>