记得很多的编辑器、自动采集系统都一个自动保存远程图片的功能,大概原理就是利用xmlhttp对象获取图片,然后用流对象写入保存,参照网上的代码,自己写了一个,与流传的代码没什么区别!代码如下,就一个函数:
<% Function SaveRemoteFile(sSavePath,sRemoteFileUrl) On Error Resume Next SaveRemoteFile = False Dim oXML : Set oXML = Server.CreateObject("Microsoft.XMLHTTP") With oXML .Open "Get",sRemoteFileUrl,False,"","" .Send If .Status<>200 Then Exit Function RemoteDate = .ResponseBody End With Set oXML = Nothing Dim oStream : Set oStream = Server.CreateObject("Adodb.Stream") With oStream .Type = 1 .Open .Write RemoteDate .SaveToFile sSavePath,2 If Err.Number=0 Then SaveRemoteFile = True .Close() End With Set oStream = Nothing End Function
'调用方法如下
SaveAddr=Server.MapPath("demo.gif") SourceURL="http://www.jz265.net/intl/zh-CN/images/logo_cn.gif" Call SaveRemoteFile(SaveAddr,SourceURL) %> Tag