当前位置: 首页 > 图文教程 > 网络编程 > ASP > 利用ADODB.Stream使用浏览器下载服务器文件

ASP
BytesToBstr获取的源码转换为中文的代码
PostHttpPage用asp是实现模拟登录效果的代码
asp下实现UrlEncoding转换编码的代码
GetBody asp实现截取字符串的代码
asp之GetArray提取链接地址,以$Array$分隔的代码
DefiniteUrl asp将相对地址转换为绝对地址的代码
ReplaceSaveRemoteFile 替换、保存远程图片 的代码
ReSaveRemoteFile函数之asp实现查找文件保存替换的代码
FormatRemoteUrl函数之asp实现格式化成当前网站完整的URL-将相对地址转换为绝对地址的代码
ReplaceTrim 函数之asp实现过滤掉字符中所有的tab和回车和换行的代码
CheckFile函数之asp实现检查某一文件是否存在的代码
SaveRemoteFile函数之asp实现保存远程的文件到本地的代码
FpHtmlEnCode 函数之标题过滤特殊符号的代码
GetPaing 函数之asp采集函数中用到的获取分页的代码
ScriptHtml 函数之过滤html标记的asp代码
asp实现检查目录是否存在与建立目录的函数
ShowPage 显示“上一页 下一页”等信息的封装代码
JoinChar 向地址中加入 ? 或 & 用于实现传参
CreateKeyWord asp实现的由给定的字符串生成关键字的代码
Server.Execute方法执行指定的ASP程序

ASP 中的 利用ADODB.Stream使用浏览器下载服务器文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 80 ::
收藏到网摘: n/a

download.asp?file=相对路径的文件
就可以把这个文件下载下来

<%
2
3 call downloadFile(replace(replace(Request("file"),"\",""),"/",""))
4
5 Function downloadFile(strFile)
6 ' make sure you are on the latest MDAC version for this to work
7 ' -------------------------------------------------------------
8
9
10 ' get full path of specified file
11 strFilename = server.MapPath(strFile)
12
13
14 ' clear the buffer
15 Response.Buffer = True
16 Response.Clear
17
18 ' create stream
19 Set s = Server.CreateObject("ADODB.Stream")
20 s.Open
21
22 ' Set as binary
23 s.Type = 1
24
25 ' load in the file
26 on error resume next
27
28
29 ' check the file exists
30 Set fso = Server.CreateObject("Scripting.FileSystemObject")
31 if not fso.FileExists(strFilename) then
32 Response.Write("<h1>Error:</h1>" & strFilename & " does not exist<p>")
33 Response.End
34 end if
35
36
37 ' get length of file
38 Set f = fso.GetFile(strFilename)
39 intFilelength = f.size
40
41
42 s.LoadFromFile(strFilename)
43 if err then
44 Response.Write("<h1>Error: </h1>" & err.Description & "<p>")
45 Response.End
46 end if
47
48 ' send the headers to the users browser
49 Response.AddHeader "Content-Disposition", "attachment; filename=" & f.name
50 Response.AddHeader "Content-Length", intFilelength
51 Response.CharSet = "UTF-8"
52 Response.ContentType = "application/octet-stream"
53
54 ' output the file to the browser
55 Response.BinaryWrite s.Read
56 Response.Flush
57
58
59 ' tidy up
60 s.Close
61 Set s = Nothing
62
63
64 End Function
65
66 %>