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

即直接提示用户下载而不是由浏览器打开某些文件。注意,下面的代码拷贝到ASP文件中后,不要再添加一些非ASP代码在页面中:如HTML和javascript客户端的代码。 

复制代码 代码如下:

<%

'--------------------------------------------

Response.Buffer = True

Dim strFilePath, strFileSize, strFileName

Const adTypeBinary = 1

strFilePath = "文件路径 "

strFileSize = ... 文件大小,可选

strFileName = "文件名"

Response.Clear

'8*******************************************8

' 需要在你的服务器上安装 MDAC 2.6 或MDAC2.7

'8*******************************************8

Set objStream = Server.CreateObject("ADODB.Stream")

objStream.Open

objStream.Type = adTypeBinary

objStream.LoadFromFile strFilePath

strFileType = lcase(Right(strFileName, 4)) '文件扩展名 站.长.站 

' 通过文件扩展名判断 Content-Types

Select Case strFileType

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" 

Case Else

'Handle All Other Files

ContentType = "application/octet-stream"

End Select

Response.AddHeader "Content-Disposition", "attachment; filename= strFileName

Response.AddHeader "Content-Length", strFileSize

Response.Charset = "UTF-8" ' 客户端浏览器的字符集UTF-8

Response.ContentType = ContentType

Response.BinaryWrite objStream.Read

Response.Flush

objStream.Close

Set objStream = Nothing

%>

时间: 2024-09-21 19:42:03

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

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

即直接提示用户下载而不是由浏览器打开某些文件.注意,下面的代码拷贝到ASP文件中后,不要再添加一些非ASP代码在页面中:如HTML和javascript客户端的代码.  复制代码 代码如下: <% '-------------------------------------------- Response.Buffer = True Dim strFilePath, strFileSize, strFileName Const adTypeBinary = 1 strFilePath = "

unity局域网中客户端下载服务端的xml文件

问题描述 unity局域网中客户端下载服务端的xml文件 unity局域网中客户端怎样实现下载服务端的xml文件.顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶顶

asp.net-从web服务端输出多个文件有哪些方案?

问题描述 从web服务端输出多个文件有哪些方案? 需求:浏览器发起一次请求,服务端在内存中生成若干文件,提供给浏览器一次性下载, 文件不存留在服务器. 服务端语言:asp.net mvc 解决方案 内存中的内容直接写回http的response就好了.客户端写入文件

ASP.NET MVC5验证系列之服务端验证_实用技巧

 这篇文章,我将会说到,使用数据注解API来进行服务端验证.ASP.NET MVC 框架在执行的时候,验证所有传递到控制器的数据,如果验证失败就把错误消息,填充到ModelState对象中,并且把这个对象传递给控制器,然后控制器中的方法,根据Modelstate的状态来判断,是否验证失败还是验证通过. 在这里,我将会使用两种方法来验证数据的合法性,一个是手动添加错误消息到ModelState对象中,另外一个方法是使用数据注解[Data Annotation] API,来做. 先来看看使用手动验证

在C#中WCF服务端在客户端断开时清除资源

问题描述 在C#中WCF服务端如何如何知道客户端断开时清除资源 解决方案 解决方案二:你可以监听所有客户端与服务链接的Closing事件.OperationContext.Current.Channel.Closing+=newEventHandler(Channel_Closing);只适合支持Session的binding.其它参考:解决方案三:所谓"使用资源的方法"内部确保在返回之前"释放资源"就行了.

asp.net再浏览器中查看的时候报这个错,关闭解决方案重开之后就不会

问题描述 asp.net再浏览器中查看的时候报这个错,关闭解决方案重开之后就不会 "/"应用程序中的服务器错误. 引发类型为"System.OutOfMemoryException"的异常. 说明: 执行当前 Web 请求期间,出现未经处理的异常.请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息. 异常详细信息: System.OutOfMemoryException: 引发类型为"System.OutOfMemoryExceptio

winform的服务端怎么发送音频文件到浏览器上并在网页播放?

问题描述 具体的问题:winform的服务端打开文件发送音频文件到浏览器上并在网页播放(浏览器作为客户端,直接输ip地址和端口号连接我的服务端)怎么弄?是不是需要发送一个http的头信息指明发过来的是什么东西?是的话,需要怎么发呢?求解!!! 解决方案 解决方案二:来个人吭声好吗解决方案三:Html5的Video,或者flash都是可以的解决方案四:引用2楼hanjun0612的回复: Html5的Video,或者flash都是可以的 我发的流的形式,打开一个文件后转成流发过去解决方案五:来个人

通过重建Hosting系统理解HTTP请求在ASP.NET Core管道中的处理流程[上]:采用管道处理请求

之所以称ASP.NET Core是一个Web开发平台,而不是一个单纯的开发框架,源于它具有一个极具扩展性的请求处理管道,我们可以通过对这个管道的定制来满足各种场景下的HTTP处理需求.ASP. NET Core应用的很多特性,比如路由.认证.会话.缓存等,都是通过对管道的定制来实现的.我们甚至可以通过管道定制在ASP.NET Core平台上创建我们自己的Web框架,实际上MVC和SingalR这两个重要的Web框架也是采用这样的方式创建的. [本文已经同步到<ASP.NET Core框架揭秘>

vc++编程问题-VC实现服务端和客户端的文件传输

问题描述 VC实现服务端和客户端的文件传输 套接字会用,也可以实现数据库的数据传输,那么文件怎么传输呢?上午百度了好多个例子,但是还是看不懂,太多了.哪位大神告诉我关键的代码.暂时只要求可以传输就可以了.cfile? 解决方案 文件传输本质上就是数据传输 只是在本地将文件读出字节流,传给对方再保存成文件:就实现了文件传输