Asp文件下载代码
当我们要下载一个服务器文件的时候一般是利用系统的IE判别功能来下载
当然,我们也可以用Asp以二进制的方法来下载任意文件
而避免像TXT或者JPEG文件 输入地址后会被打开 而不下载的现象
代码如下
我们可以嵌入到一个超链接里,例如:
<a href=download.asp?filename=/upfile/<%=rs("filename")%>><%=rs("file")%></a>
------------下面是download.asp文件内容-------------------
<%
Dim Stream
Dim Contents
Dim FileName
Dim FileExt
Const adTypeBinary = 1
FileName = Request.QueryString("FileName")
if FileName = "" Then
Response.Write "无效文件名."
Response.End
End if
’下面是不希望下载的文件
FileExt = Mid(FileName, InStrRev(FileName, ".") + 1)
Select Case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "ASAX", "MDB"
Response.Write "受保护文件,不能下载."
Response.End
End Select
’下载这个文件
Response.Clear
Response.ContentType = "application/octet-stream"
Response.AddHeader "content-disposition", "attachment; filename=" & FileName
Set Stream = server.CreateObject("ADODB.Stream")
Stream.Type = adTypeBinary
Stream.Open
Stream.LoadFromFile Server.MapPath(FileName)
While Not Stream.EOS
Response.BinaryWrite Stream.Read(1024 * 64)
Wend
Stream.Close
Set Stream = Nothing
Response.Flush
Response.End
%>