4s天天飞车刷金币|天天飞车突击尖兵觉醒
★→ASP程序學習群:62655404 微信公眾號開發
訂閱本欄目 RSS您所在的位置: 深山工作室 > ASP學習 > 正文

asp導出內容到excel表并自定義命名后下載(非打開)

網絡 2019/4/16 14:29:04 深山工作室 字體:  瀏覽 527 我要評論
本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
%>
相關閱讀
( 2019/5/30 11:15:02 )sql server中前綴為PK、UK、DF、CK、FK表的意思
( 2019/5/6 17:22:07 )網站從http改成https(ssl證書)后設置301跳轉將http跳轉到https的方法
( 2019/5/2 21:47:46 )ASP利用fso讀取文件夾里所有文件的名字
( 2019/4/16 15:23:47 )jquery動態生成的html代碼中無法使用jquery事件的解決方法
( 2019/4/16 14:40:46 )asp實現獲得當前文章的上一篇信息與下一篇信息功能及代碼
( 2019/4/16 14:29:04 )asp導出內容到excel表并自定義命名后下載(非打開)
( 2019/4/16 11:31:00 )'禁止站外提交頁面和數據
( 2019/4/16 11:19:50 )asp將中文漢字字符轉為unicode編碼(\u編碼)與把unicode編碼轉為漢字
共有0條關于《asp導出內容到excel表并自定義命名后下載(非打開)》的評論
發表評論
正在加載評論……
返回頂部發表評論
呢 稱:
表 情:
內 容:
評論內容:不能超過 1000 字,需審核,請自覺遵守互聯網相關政策法規。
驗證碼: 驗證碼 
深山工作室網友評論聲明,請自覺遵守互聯網相關政策法規。

您發布的評論即表示同意遵守以下條款:
一、不得利用本站危害國家安全、泄露國家秘密,不得侵犯國家、社會、集體和公民的合法權益;
二、不得發布國家法律、法規明令禁止的內容;互相尊重,對自己在本站的言論和行為負責;
三、本站對您所發布內容擁有處置權。

更多信息>>欄目類別選擇
rss學習
個人空間
網站設計
網站公告
下載
photoshop學習
ASP學習
DIV+CSS學習
SEO搜索引擎憂化
java學習
HTML學習
網站信息
網站類信息
更多>>同類信息
ASP利用fso讀取文件夾里所有文件的名字
asp實現獲得當前文章的上一篇信息與下一篇信息功能及代碼
'禁止站外提交頁面和數據
asp將中文漢字字符轉為unicode編碼(\u編碼)與把unicode編碼轉為漢字
asp中qequest讀取優先級順序(通過優化之后提高速度)
asp計算頁面執行時間顯示到毫秒
批量刪除access字段里面fld.Properties.Delete
ASP操作access或sqlserver數據庫的函數庫
更多>>最新添加文章
sql server中前綴為PK、UK、DF、CK、FK表的意思
網站從http改成https(ssl證書)后設置301跳轉將http跳轉到https的方法
ASP利用fso讀取文件夾里所有文件的名字
jquery動態生成的html代碼中無法使用jquery事件的解決方法
asp實現獲得當前文章的上一篇信息與下一篇信息功能及代碼
'禁止站外提交頁面和數據
asp將中文漢字字符轉為unicode編碼(\u編碼)與把unicode編碼轉為漢字
asp中qequest讀取優先級順序(通過優化之后提高速度)
更多>>隨機抽取信息
CleanCSS:免費的CSS在線減肥工具
超級實用且不花哨的js代碼大全( 6 )
ASP.NET中Cookie編程的基礎知識
超級實用且不花哨的js代碼大全( 4 )
一行兩列的CSS設置代碼
超級實用且不花哨的js代碼大全( 2 )
css翻頁代碼
比較實用的利用javascript按比例相應縮放圖片大小
4s天天飞车刷金币