★→ASP程序学习群:62655404 微信公众号开发
订阅本栏目 RSS您所在的位置: 深山工作室 > ASP学习 > 正文

asp导出内容到excel表并自定义命名后下载(非打开)

网络 2019/4/16 14:29:04 深山工作室 字体:  浏览 9949 我要评论
需要定制网站程序、公众号程序、微信小程序可以联系:565449214或者加微信13961347334(备注:需要技术)
或者在处理一些技术问题时,有什么不懂的地方,随时可以加我QQ:565449214讨论技术或者加QQ群62655404讨论
本ASP程序代码实现两个功能:
1、将指定的数据库内容导出到EXCEL表格(可改为其它格式)。
2、任何类型的文件都是直接下载,不是在浏览器打开,并且自定义另存为对话框里的默认文件名。

完整代码如下:

<%
dim action
action=lcase(trim(request.querystring("action")))

if action="down" then '下载文件
    '任何类型的文件都是直接下载,不是在浏览器打开,且自定义另存为对话框里的默认文件名。
    call gw_downfile(trim(request.querystring("f")),"文章列表.xls") '参数:服务器端文件路径及文件名,客户端下载时的默认文件名
else '导出文件
    '将指定的数据库内容导出到EXCEL表格(可改为其它格式)
    const filename="news.xls" '导出后的文件名(全名,带.扩展名)
    dim fs,filepath,myfile
    set fs=server.createobject("scripting.filesystemobject")
    filepath=server.mappath(filename)
    if fs.FileExists(filepath) then fs.DeleteFile(filepath)
    set myfile=fs.CreateTextFile(filepath,true)
    
    'chr(9)等于tab键
    dim strline  
    strline="发布时间" & chr(9) & "分类" & chr(9) & "标题" & chr(9) & "内容"
    myfile.writeline strLine
    
    dim rs
    'conn为打开数据库变量
    set rs=conn.execute("select * from [表名] order by [id] desc")
    do while not rs.eof
        strline=rs("发布时间") & chr(9) & rs("分类") & chr(9) & rs("标题") & chr(9) & rs("内容")
        myfile.writeline strLine
    rs.movenext() : loop
    set rs=nothing
    
    set myfile=nothing
    set fs=nothing
    response.write("导出成功!点击下载:<a href='?action=down&f=" & filename & "'>" & filename & "</a>")
end if
        
'功能:为文件下载"另存为"对话框指定默认文件名
'参数:服务器端文件路径及文件名,客户端下载时的默认文件名
function gw_downfile(file_server,file_client)
    gw_downfile=false
    
    dim filename : filename=server.mappath(file_server)
    
    dim fso,fso_file,file_length
    set fso=server.createobject("scripting.filesystemobject")
    if not fso.fileexists(filename) then exit function '检验文件是否存在
    set fso_file=fso.getfile(filename) '生成文件对象
    file_length=fso_file.size '获取文件大小
    
    '开启缓存,直到出现response.flush或response.end才将响应发送给客户端浏览器
    response.buffer=true
    '清除缓冲区中的所有HTML输出
    response.clear()
    '指定返回的是一个不能被客户端读取的流,必须被下载
    response.contenttype="application/octet-stream"
    '添加头信息,为"文件下载/另存为"对话框指定默认文件名
    response.addheader "content-disposition","attachment; filename=" & file_client
    '添加头信息,指定文件大小,让浏览器能够显示下载进度
    response.addheader "content-length",file_length
    
    dim stream
    set stream=server.createobject("adodb.stream") '创建读二进制文件对象
    stream.type=1 '指定或返回的数据类型为二进制,2为文本
    stream.open()
    stream.loadfromfile(filename) '将指定的文件装入对像中
    
    'eos返回对像内数据是否为空
    'read读取指定长度的二进制内容
    'readtext读取指定长度的文本内容
    while not stream.eos
        response.binarywrite stream.read(1024*64) '以块方式读取内容
    wend
    stream.close() : set stream=nothing
    '立即发送缓冲区中的输出。如果未将response.buffer设置为true,则该方法将导致运行时错误。
    response.flush()
    
    gw_downfile=true
end function
%>
相关阅读
( 2021/8/6 17:01:01 )uni-app开发表单input组件的一些规则说明自己预留使用
( 2021/7/28 10:35:24 )查询某个字符在字符串中出现的位置数组
( 2021/6/10 8:56:21 )百度小程序开发第一坑tcomponent自定义组件命名坑Compile san component failed. . [SAN ERROR] ROOT>swan-custom-component>view>千万不要用下划线作为自定义组件名
( 2021/6/8 23:24:05 )开始百度小程序开发需要准备工作
( 2021/5/26 14:13:02 )uni-app:使用uni.downloadFile下载word或pdf文件并保存到手机
( 2021/5/26 10:02:19 )小程序中利用addPhoneContact将联系人的信息添加到手机通讯录支持保存联系人头像
( 2021/5/11 19:12:56 )小程序打开pdf文件并保存到本地 支持远程pdf、word、xls表格文件打开
( 2021/5/11 18:58:19 )uni-app里面复制内容时保留换行利用正则替换br标签替换成回车换行符
共有0条关于《asp导出内容到excel表并自定义命名后下载(非打开)》的评论
发表评论
正在加载评论……
返回顶部发表评论
呢 称:
表 情:
内 容:
评论内容:不能超过 1000 字,需审核,请自觉遵守互联网相关政策法规。
验证码: 验证码 
深山工作室网友评论声明,请自觉遵守互联网相关政策法规。

您发布的评论即表示同意遵守以下条款:
一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家、社会、集体和公民的合法权益;
二、不得发布国家法律、法规明令禁止的内容;互相尊重,对自己在本站的言论和行为负责;
三、本站对您所发布内容拥有处置权。

更多信息>>栏目类别选择
uni-app
rss学习
个人空间
网站设计
网站公告
下载
photoshop学习
ASP学习
DIV+CSS学习
SEO搜索引擎忧化
java学习
HTML学习
网站信息
网站类信息
更多>>同类信息
asp无限级调用分类显示
实现iis6与iis7环境下支持mp4视频随意拖动、预览播放、边下载边播放
做好的网站把http改成https申请SSL域名证书
纯asp根据当前日期计算出当前年份的属相
ASP利用fso读取文件夹里所有文件的名字
asp实现获得当前文章的上一篇信息与下一篇信息功能及代码
'禁止站外提交页面和数据
asp将中文汉字字符转为unicode编码(\u编码)与把unicode编码转为汉字
更多>>最新添加文章
uni-app开发表单input组件的一些规则说明自己预留使用
查询某个字符在字符串中出现的位置数组
百度小程序开发第一坑tcomponent自定义组件命名坑Compile san component failed. . [SAN ERROR] ROOT>swan-custom-component>view>千万不要用下划线作为自定义组件名
开始百度小程序开发需要准备工作
uni-app:使用uni.downloadFile下载word或pdf文件并保存到手机
小程序中利用addPhoneContact将联系人的信息添加到手机通讯录支持保存联系人头像
小程序打开pdf文件并保存到本地 支持远程pdf、word、xls表格文件打开
uni-app里面复制内容时保留换行利用正则替换br标签替换成回车换行符
更多>>随机抽取信息
QQ强聊
微信公众号用户关注时自动推送回复小程序卡片(图文卡片)不需要第三方平台就可以做
屏幕两种色彩左右像电影屏幕一样分开
批量删除access字段里面fld.Properties.Delete
重要声明:关于某些人冒充本网站。
document对象详解
windows 部分热键集锦
利用javascript仿的漂亮的flash效果的菜单