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

时间:2021-05-28

即直接提示用户下载而不是由浏览器打开某些文件。注意,下面的代码拷贝到ASP文件中后,不要再添加一些非ASP代码在页面中:如HTML和javascript客户端的代码。
复制代码 代码如下:
<%
'--------------------------------------------
Response.Buffer=True
DimstrFilePath,strFileSize,strFileName
ConstadTypeBinary=1
strFilePath="文件路径"
strFileSize=...文件大小,可选
strFileName="文件名"
Response.Clear
'8*******************************************8
'需要在你的服务器上安装MDAC2.6或MDAC2.7
'8*******************************************8
SetobjStream=Server.CreateObject("ADODB.Stream")
objStream.Open
objStream.Type=adTypeBinary
objStream.LoadFromFilestrFilePath
strFileType=lcase(Right(strFileName,4))'文件扩展名站.长.站
'通过文件扩展名判断Content-Types
SelectCasestrFileType
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"
CaseElse
'HandleAllOtherFiles
ContentType="application/octet-stream"
EndSelect
Response.AddHeader"Content-Disposition","attachment;filename=strFileName
Response.AddHeader"Content-Length",strFileSize
Response.Charset="UTF-8"'客户端浏览器的字符集UTF-8
Response.ContentType=ContentType
Response.BinaryWriteobjStream.Read
Response.Flush
objStream.Close
SetobjStream=Nothing
%>

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章