VB.net 2010 视频教程 VB.net 2010 视频教程 VB.net 2010 视频教程
当前位置:
主页 > 网站开发 > ASPnet >
  • asp.net教程之ASP实现文件直接下载

  • 2017-06-11 20:12 来源:未知
在IE进行文档链接时,如果遇到OLE支持的文档,IE会自动调用相应程序打开它,有时候这种功能并不是我们所需的,虽然我们可以提醒用户用鼠标右键-->"目标另存为...."命令来下载文档,但这样毕竟不太友好,本文描述了利用FSO及Stream方法实现IE直接下载文档.

<%@ language=vbscript codepage=65001%>

<% 
''Filename must be input
if Request("Filename")="" then
response.write "<h1>Error:</h1>Filename is empty!<p>"
else
call  downloadFile(replace(replace(Request("Filename"),"\",""),"/",""))    

Function  downloadFile(strFile)    
''  make  sure  you  are  on  the  latest  MDAC  version  for  this  to  work    
''  get  full  path  of  specified  file    
strFilename  =  server.MapPath(strFile)    

''  clear  the  buffer    
Response.Buffer  =  True    
Response.Clear    

''  create  stream    
Set  s  =  Server.CreateObject("ADODB.Stream")    
s.Open    

''  Set  as  binary    
s.Type  =  1    

''  load  in  the  file    
on  error  resume  next    

''  check  the  file  exists
Set  fso  =  Server.CreateObject("Scripting.FileSystemObject")    
if  not  fso.FileExists(strFilename)  then    
Response.Write("<h1>Error:</h1>"&strFilename&" does not exists!<p>")    
Response.End    
end  if

''  get  length  of  file    
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  

''  send  the  headers  to  the  users  Browse
Response.AddHeader  "Content-Disposition","attachment;  filename="&f.name    
Response.AddHeader  "Content-Length",intFilelength    
Response.CharSet  =  "UTF-8"    
Response.ContentType  =  "application/octet-stream"    

''  output  the  file  to  the  browser    
Response.BinaryWrite  s.Read    
Response.Flush    

''  tidy  up    
s.Close    
Set  s  =  Nothing    

End  Function    
end if
%>      
相关教程
  • 互联网资产管理须持牌经营 2018-12-09
  • 新闻中心给记者留下美好记忆 2018-12-09
  • 险企偿付能力2017年“成绩单”:3家不达标 7家被关注 2018-12-07
  • 【学习时刻】清华大学周绍杰:坚定不移地贯彻落实新发展理念 2018-12-07
  • 建立市场经济,原本的计划经济哪里去?坚持集体的南街村没有到户就没有建立市场经济,是不是还在搞计划经济?看其实现公有资本在其所有者们进行分配应是计划经济。 2018-10-30
  • 市场经济就是一种唯利是图的经济,是一种波动、走极端的经济,新时期的发展方式与结果就是如 此。那么指望市场经济来解决需要与不平衡的矛盾,对症下药了吗? 2018-10-30
  • 比利时30大胜巴拿马 卢卡库梅开二度 强队总算没有都凉凉 2018-10-18
  • 新科欧洲状元 五盾军团能否延续法兰西之夏荣耀 2018-10-18
  • 河北一保时捷车主疑遭枪击 警方悬赏9万元通缉 2018-09-26
  • 【十九大·理论新视野】动漫:“社会主义现代化强国”如何建成 2018-09-26
  • 林海起诉海底捞侵权 对方回应:已停止播放其音乐作品 2018-06-23
  • 新疆伊犁:薰衣草香飘万里 “紫色经济”成产业 2018-06-23
  • 《与书行》第一集先导片丨李小白:阅读让时尚圈回归平静 2018-06-23
  • 太原:幸福是奋斗出来的--山西频道--人民网 2018-06-23
  • 228| 187| 146| 553| 28| 987| 148| 914| 644| 746| 441| 983| 237| 985| 889|