当前位置: 首页 > 图文教程 > 网络编程 > ASP > asp在IE浏览器中下载服务端上的各类文件的实现方法

ASP
用密码保护页面 (II)
用密码保护页面 (III)
简单的文件目录浏览源程序
ASP中的函数应用方法及应用举例(一)
ASP中的函数应用方法及应用举例(二)
完整的访问统计系统(一:数据库篇)
完整的访问统计程序(二 程序篇)
完整的访问统计程序(三 应用篇)
一个提供用户输入时期的绝好程序之(一)
一个提供用户输入时期的绝好程序之(二)
构建你的网站新闻自动发布系统之五
构建你的网站新闻自动发布系统之六
完整的访问统计程序(二 程序篇)
完整的访问统计程序(三 应用篇)
ASP环境下邮件列表功能的实现 (一)
ASP环境下邮件列表功能的实现 (二)
ASP环境下邮件列表功能的实现 (三)
ASP环境下邮件列表功能的实现 (四)
ASP进阶之文章在线管理更新(1)
ASP进阶之文章在线管理更新(2)

ASP 中的 asp在IE浏览器中下载服务端上的各类文件的实现方法


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

即直接提示用户下载而不是由浏览器打开某些文件。注意,下面的代码拷贝到ASP文件中后,不要再添加一些非ASP代码在页面中:如HTML和javascript客户端的代码。
复制代码 代码如下:

<%
'--------------------------------------------
Response.Buffer = True
Dim strFilePath, strFileSize, strFileName
Const adTypeBinary = 1
strFilePath = "文件路径 "
strFileSize = ... 文件大小,可选
strFileName = "文件名"
Response.Clear
'8*******************************************8
' 需要在你的服务器上安装 MDAC 2.6 或MDAC2.7
'8*******************************************8
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type = adTypeBinary
objStream.LoadFromFile strFilePath
strFileType = lcase(Right(strFileName, 4)) '文件扩展名 站.长.站
' 通过文件扩展名判断 Content-Types
Select Case strFileType
Case ".asf"
ContentType = "video/x-ms-asf"
Case ".avi"
ContentType = "video/avi"
Case ".doc"
ContentType = "application/msword"
Case ".zip"
ContentType = "application/zip"
Case ".xls"
ContentType = "application/vnd.ms-excel"
Case ".gif"
ContentType = "image/gif"
Case ".jpg", "jpeg"
ContentType = "image/jpeg"
Case ".wav"
ContentType = "audio/wav"
Case ".mp3"
ContentType = "audio/mpeg3"
Case ".mpg", "mpeg"
ContentType = "video/mpeg"
Case ".rtf"
ContentType = "application/rtf"
Case ".htm", "html"
ContentType = "text/html"
Case ".asp"
ContentType = "text/asp"
Case Else
'Handle All Other Files
ContentType = "application/octet-stream"
End Select
Response.AddHeader "Content-Disposition", "attachment; filename= strFileName
Response.AddHeader "Content-Length", strFileSize
Response.Charset = "UTF-8" ' 客户端浏览器的字符集UTF-8
Response.ContentType = ContentType
Response.BinaryWrite objStream.Read
Response.Flush
objStream.Close
Set objStream = Nothing
%>