首页 / 网页编程 / ASP / 用ASP VBS xmlhttp adodbstream下载和保存图片的代码
函数:
复制代码 代码如下: function saveFile(data,recfilen) set Astream=CreateObject("Adodb.Stream")"asp Server.CreateObject("Adodb.Stream") fxt=mid(recfilen,InStrRev(recfilen,".")+1) txt=false if fxt="asp" or fxt="xml" or fxt="aspx" or fxt="php" or fxt="txt" or fxt="jsp" then txt=true end if if txt then Astream.type=2 "1 bin,2 txt else Astream.type=1 "1 bin,2 txt end if Astream.Mode = 3" adModeRead =1 " adModeReadWrite =3 " adModeRecursive =4194304 " adModeShareDenyNone =16 " adModeShareDenyRead =4 " adModeShareDenyWrite =8 " adModeShareExclusive =12 " adModeUnknown =0 " adModeWrite =2 Astream.open "Astream.CharSet = "GB2312" "Astream.LoadFromFile(recfilen) "装载文件 "Assp=Astream.size Astream.Position =0 "装载文件时设置为Assp "Astream.Writetext tmpstr00,1 if txt then data=bytes2bstr(data) Astream.Writetext data,1 else Astream.Write data end if
Astream.SaveToFile recfilen,2 Astream.close end function "Server.
function downimg(url) set oXMLHTTP =CreateObject("Microsoft.XMLHTTP")"asp Server.CreateObject("Microsoft.XMLHTTP") data_got="" oXMLHTTP.open "GET",url, false oXMLHTTP.setRequestHeader "Accept-Encoding"," gzip, deflate" oXMLHTTP.setRequestHeader "User-Agent","Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 2.0.50727)" oXMLHTTP.send rtstatus=oXMLHTTP.status data_got=oXMLHTTP.responsebody filename=mid(url,InStrRev(url,"/")+1) if rtstatus=200 then data_got=oXMLHTTP.responsebody saveFile data_got,filename else data_got="" end if set oXMLHTTP =nothing end function function bytes2bstr(vin) "二进制转化为汉字 strreturn = "" for i = 1 to lenb(vin) thischarcode = ascb(midb(vin,i,1)) if thischarcode < &h80 then strreturn = strreturn & chr(thischarcode) else nextcharcode = ascb(midb(vin,i+1,1)) strreturn = strreturn & chr(clng(thischarcode) * &h100 + cint(nextcharcode)) i = i + 1 end if next bytes2bstr = strreturn end function