国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

asp中自定義文件下載

2019-11-18 17:02:10
字體:
供稿:網(wǎng)友

可以用流下載(耗內(nèi)存,少用)或直接轉(zhuǎn)到該文件.


<%

Const USE_STREAM = 0 '0.不用流(Adodb.Stream)下載 1.用流下載
Const ALLOW_FILE_EXT = "rar,z

Dim sDownFilePath '下載文件路徑
sDownFilePath = Trim(Request("FilePath"))
'或者根據(jù)傳過來的文件ID從
數(shù)據(jù)庫中獲取文件路徑

'如果 sDownFilePath 為絕對路徑,一定要將 sDownFilePath 轉(zhuǎn)換為相對 本文件的相對路徑

'sDownFilePath = "focus.swf"

Call DownloadFile(sDownFilePath)

Function DownloadFile(s_DownFilePath)
    '判斷有沒傳遞文件名
    If IsNull(s_DownFilePath) = True Or Trim(s_DownFilePath) = "" Then
        OutputErr "錯(cuò)誤:先確定要下載的文件,下載失敗"
    End If

    '判斷擴(kuò)展名是否合法
    Dim s_FileExt
    s_FileExt = Mid(s_DownFilePath, InstrRev(s_DownFilePath, ".")+1)
    If InStr("," & ALLOW_FILE_EXT & ",", "," & s_FileExt & ",") <= 0 Then
        OutputErr "錯(cuò)誤:文件類型(" & s_FileExt & ")不允許被下載,下載失敗"
    End If
   
    s_DownFilePath = Replace(s_DownFilePath, "/", "/")

    '為了安全,某些目錄禁止下載文件,在這里處理
    '
   
    '檢測服務(wù)器是否支持fso
    Dim o_Fso
    On Error Resume Next
    Set o_Fso = Server.CreateObject("Scripting.FileSystemObject")
    If Err.Number <> 0 Then
        Err.Clear
        OutputErr "錯(cuò)誤:服務(wù)器不支持fso組件,下載失敗"
    End If

    '取得文件名,文件大小
    Dim s_FileMapPath
    Dim o_File, s_FileName, n_FileLength
    s_FileMapPath = Server.MapPath(s_DownFilePath)
    If (o_Fso.FileExists(s_FileMapPath)) = True Then
        Set o_File = o_Fso.GetFile(s_FileMapPath)
        s_FileName = o_File.Name
        n_FileLength = o_File.Size
        o_File.Close
    Else
        OutputErr "錯(cuò)誤:文件不存在,下載失敗"
    End If
    Set o_Fso = Nothing

    '判斷是否下載的文件大小超過限制
    '   
   
    '如果不是用流下載,直接轉(zhuǎn)到該文件
    If USE_STREAM = 0 Then
        Response.Redirect sDownFilePath
        Response.end
    End If

    '檢測服務(wù)器是否支持Adodb.Stream
    On Error Resume Next
    Set o_Stream = Server.CreateObject("Adodb.Stream")
    If Err.Number <> 0 Then
        Err.Clear
        OutputErr "錯(cuò)誤:服務(wù)器不支持Adodb.Stream組件,下載失敗"
    End If

    o_Stream.Tyep = 1
    o_Stream.Open
    o_Stream.LoadFromFile s_FileMapPath

    Response.Buffer = True
    Response.Clear
    Response.AddHeader "Content-Disposition", "attachment; filename=" & s_FileName
    Response.AddHeader "Content-Length", n_FileLength
    Response.CharSet = "UTF-8"
    Response.ContentType = "application/octet-stream"
    Response.BinaryWrite o_Stream.Read
    Response.Flush

    o_Stream.Close
    Set o_Stream = Nothing

End Function

Sub OutputErr(s_ErrMsg)
    Response.Write "<font color=red>" & s_ErrMsg & "</font>"
    Response.End
End Sub

%>

http://www.survivalescaperooms.com/jiny-z/archive/2006/08/29/489102.html


發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 琼海市| 河西区| 沙湾县| 灵武市| 上高县| 东乌珠穆沁旗| 洞头县| 永宁县| 义马市| 四川省| 镇安县| 平乐县| 周至县| 台南县| 丰城市| 西充县| 桦川县| 延安市| 鸡泽县| 成都市| 潮安县| 濮阳市| 宜丰县| 苍梧县| 土默特右旗| 灵台县| 济南市| 英德市| 岐山县| 呼伦贝尔市| 大宁县| 珠海市| 神池县| 承德市| 波密县| 稷山县| 东乌珠穆沁旗| 静安区| 洪湖市| 沂水县| 元谋县|