当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp读取远程文件并保存到本地代码

ASP
如何使用ASP产生象安装向导的主页
ADO如何取得数据库中表的字段信息之一
ADO如何取得数据库中表的字段信息之二
网页计数器的程序
实验Recordset.Movenext,Recordset.Previous,Recorset...等移动记录
不能ASP图像组件来生成图像的ASP计数器程序(一)
IIS5 + ADO 2.5新先睹为快技术(一)
IIS5 + ADO 2.5新先睹为快技术(二)
如何使用 Microsoft Access 和 Active Server Pages 加密你的页面
WINDOWS 2000搭載ASP3.0和IIS5.0
IIS 5.0新功能
网络开发之编程技巧之一(有效验证用户的登录)
如何使用ASP在自己的网站建立投票机制(一)
如何使用ASP在自己的网站建立投票机制(二)
组件对象开发Web应用的实例分析
如何实现动态添加Html文档中Form项
一个BBS的源代码(一)
一个BBS的源代码(二)
一个BBS的源代码(三)
一个BBS的源代码(四)

ASP 中的 asp读取远程文件并保存到本地代码


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

<%
dim act,ifLogin,loginUrl,loginActUrl,loginData,fileUrl,fileName
act=request.QueryString("act")
if(act="do") then
ifLogin=Cint(request.QueryString("ifLogin"))
loginActUrl=request.Form("loginActUrl")
loginData=request.Form("loginData")
fileUrl=request.Form("fileUrl")
fileName=mid(fileUrl,instrrev(fileUrl,"/")+1)
extPos=instrrev(fileName,"?")
if(extPos>0) then
fileName=left(fileName,extPos-1)
end if
if(ifLogin=1) then
call PostHttpPage(loginActUrl,loginData)
end if
call DownloadFile(fileUrl,fileName)
else
%>
<form name="form1" method="post" action="?act=do">
<p>是否登录:
<input name="ifLogin" type="radio" value="1">

<input name="ifLogin" type="radio" value="0" checked>
否 </p>
<p>登录提交地址:
<input name="loginActUrl" type="text" size="50">
</p>
<p>
登录数据:<input name="loginData" type="text" size="50">
</p>
<p>
要保存的远程文件URL:
<input name="fileUrl" type="text" size="50">
</p>
<p>
<input type="submit" name="Submit" value="提交">
<input type="reset" name="Submit2" value="重写">
</p>
</form>
<%
end if
Function BytesToBstr(body,code)
dim objstream
set objstream = Server.CreateObject("adodb.stream")
objstream.Type = 1
objstream.Mode =3
objstream.Open
objstream.Write body
objstream.Position = 0
objstream.Type = 2
objstream.Charset =code
BytesToBstr = objstream.ReadText
objstream.Close
set objstream = nothing
End Function
Function PostHttpPage(loginActUrl,PostData)
Dim xmlHttp
Dim RetStr
Set xmlHttp = CreateObject("Microsoft.XMLHTTP")
xmlHttp.Open "POST", loginActUrl, False
XmlHTTP.setRequestHeader "Content-Length",Len(PostData)
xmlHttp.setRequestHeader "Content-Type", "application/x-www-form-urlencoded"
xmlHttp.Send PostData
If Err.Number <> 0 Then
Set xmlHttp=Nothing
response.Write("提交登录时出错!提交数据:"&PostData)
Exit Function
End If
PostHttpPage=BytesToBstr(xmlHttp.responseBody,"GB2312")
Set xmlHttp = nothing
End Function
'''''''''''''''''''''''''''''''''''''''''''
function DownloadFile(url,filename)
Set xml = Server.CreateObject("Msxml2.XMLHTTP") '创建对象
xml.Open "GET",url,False
xml.Send '发送请求
if Err.Number>0 then
Response.Status="404"
else
Response.ContentType="application/octet-stream"
Response.AddHeader "Content-Disposition:","attachment; filename=" & filename
Range=Mid(Request.ServerVariables("HTTP_RANGE"),7)
if Range="" then
Response.BinaryWrite(xml.responseBody)
else
S.position=Clng(Split(Range,"-")(0))
Response.BinaryWrite(xml.responseBody)
End if
end if
Response.End
Set xml = Nothing
end function
'''''''''''''''''''''''''''''''''''''''''''''''''''''
%>