文章·资料 电脑软件 手机软件 网站源码




    本 站 搜 索
   推 荐 文 章        More...
华硕易电脑(ASUS Eee PC 10..
先来段开场白:为了外出携带方便..
Acronis True Image 使用..
  一款可以在Windows下使用..
Norton Ghost 使用详解
一、分区备份   使用Ghost..
    文 章 阅 读 排 行
世界各国所使用的国际域名..
域名缩写 国家/地区 ..
关于 Firefox 在中国持续..
亲爱的 Firefox 用户及 Firefox..
全国各地、公共 DNS 服务器
排序 地区/公司名称 ..
Microsoft SQL Server 2000..
  对于第一次安装 Microsoft ..
Windows 系统安装或备份时 ..
【ISO 文件】 ISO 文件其实..
Windows PE 系统安装微软..
如果电脑没有光驱,或者没有把..
ASP 网页编码 GB2312 转换..
1、用记事本打开文件(如果整站..
腾讯:难以承受之痛的背后..
亲爱的网吧管理员:   在此,..
SATA 硬盘分区设置与安装..
  随着i865、i875、KT600等..
Windows XP 安装界面修改..
安装装界面----也就是安装复制..
 文 章 信 息
ASP实现文件直接下载
评论()〗〖留言〗〖收藏
〖文章分类:电脑·手机·网络 / 网站设计·开发·优化〗〖阅读选项
在IE进行文档链接时,如果遇到OLE支持的文档,IE会自动调用相应程序打开它,有时候这种功能并不是我们所需的,虽然我们可以提醒用户用鼠标右键-->"目标另存为...."命令来下载文档,但这样毕竟不太友好,本文描述了利用FSO及Stream方法实现IE直接下载文档。

主程序代码如下:
--------------------------------------------------------------------------------
’定义所有需要使用的变量 
Dim strFilename,S,Fso,F,intFilelength
strFilename = Server.MapPath(Trim(Request("File")))    
Response.Buffer = True    
Response.Clear    
Set S = Server.CreateObject("ADODB.Stream")    
S.Open    
S.Type  =  1    
On  Error  Resume  Next    
Set Fso = Server.CreateObject("Scripting.FileSystemObject") 
If Not Fso.FileExists(strFilename) Then 
Response.Write("<h1>Error:</h1>"&strFilename&"你要下载的文件不存在!<p>")    
Response.End    
End  If

Set F = Fso.GetFile(strFilename)    
intFilelength = F.Size ’获取文件大小
S.LoadFromFile(strFilename)    
If Err Then    
Response.Write("<h1>Error: </h1>Unknown Error!<p>")    
Response.End 
End If  

Response.AddHeader "Content-Disposition","attachment;filename="&F.name    
Response.AddHeader "Content-Length",intFilelength    
Response.CharSet = "GB2312"    
Response.ContentType = "application/octet-stream"    
Response.BinaryWrite  S.Read    
Response.Flush        
S.Close    
Set S = Nothing

文章作者:未知  更新日期:2006-09-22
〖文章浏览:〗〖发送文章〗〖打印文章
相关文章 ·用FLASH和ASP实现数据库查询2006-05-13
·MD5 算法的ASP实现代码2008-03-07