<ins id="rl15r"><noframes id="rl15r">
<var id="rl15r"></var>
<menuitem id="rl15r"><strike id="rl15r"></strike></menuitem><var id="rl15r"></var>
<var id="rl15r"><video id="rl15r"></video></var>
<cite id="rl15r"></cite>
<var id="rl15r"></var>
<var id="rl15r"></var>
<var id="rl15r"></var>
<var id="rl15r"><strike id="rl15r"><thead id="rl15r"></thead></strike></var>
?
襄樊网站建设专家:襄樊亿企发网络公司欢迎您!专注于襄樊网站建设、襄樊网站排名、襄樊平面设计、襄樊域名注册、襄樊网站推广……

ASP实现文件直接下载-枣阳网站建设技术,枣阳网站

作者:襄樊网站建设  来源:襄樊网络公司  时间:2011-06-03 22:45  点击:

在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

 



责任编辑:襄樊网站建设
? 1彩Ⅱ娱乐 532| 689| 909| 499| 720| 442| 335| 990| 909| 960| 827| 129| 956| 350| 362| 979| 216| 281| 215| 438| 398| 135| 687| 950| 4| 675| 97| 742| 164| 7| 271| 614| 470| 997| 512| 106| 515| 149| 33| 798| 879|