asp的一个下载功能页面,就是把文件直接传给客户端的方式

None.gif < %
None.giffilepath
= request.querystring( " filepath " )
None.giffilenames
= Split (filepath, " / " )
None.giffilename
= filenames( 1 )
None.gif
Const  ForReading = 1
None.gif
Const  TristateTrue =- 1   ' Unicode
None.gif
Const  FILE_TRANSFER_SIZE = 16384   ' 16k
None.gif'
Use the following line for IIS4/PWS - this is the default for IIS5
None.gif
Response.Buffer  =   True
None.gif
None.gif
Function  TransferFile(path, mimeType, filename)
None.gif
Dim  objFileSystem, objFile, objStream
None.gif
Dim  char
None.gif
Dim  sent
None.gifsend
= 0
None.gifTransferFile 
=   True
None.gif
None.gif
Set  objFileSystem  =  Server.CreateObject( " Scripting.FileSystemObject " )
None.gif
Set  objFile  =  objFileSystem.GetFile(Path)
None.gif
Set  objStream  =  objFile.OpenAsTextStream(ForReading, TristateTrue)
None.gif
None.gifResponse.AddHeader 
" content-type " , mineType
None.gif
None.gifResponse.ContentType 
=   " application/octet-stream "
None.gif
None.gifresponse.AddHeader 
" Content-Disposition " , " attachment;filename= " & filename 
None.gifResponse.AddHeader 
" content-length " , objFile.Size
None.gif
None.gif
Do   While   Not  objStream.AtEndOfStream
None.gifchar 
=  objStream.Read( 1 )
None.gifResponse.BinaryWrite(char)
None.gifsent 
=  sent  +   1
None.gif
If  (sent  MOD  FILE_TRANSFER_SIZE)  =   0   Then
None.gifResponse.Flush
None.gif
If   Not  Response.IsClientConnected  Then
None.gifTransferFile 
=   False
None.gif
Exit   Do
None.gif
End   If
None.gif
End   If
None.gif
Loop
None.gif
None.gifResponse.Flush
None.gif
If   Not  Response.IsClientConnected  Then  TransferFile  =   False
None.gif
None.gifobjStream.Close
None.gif
Set  objStream  =   Nothing
None.gif
Set  objFileSystem  =   Nothing
None.gif
End Function
None.gif
None.gif
Dim  path, mimeType, sucess
None.gif
None.gifpath 
=  Server.MapPath(filepath)
None.gifmimeType 
=   " application/octet-stream "  
None.gifsucess 
=  TransferFile(path, mimeType,filename)
None.gif
None.gifResponse.End
None.gif%
>
None.gif

转载于:https://www.cnblogs.com/aowind/archive/2005/12/22/302533.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值