下载一个excel文件的经典asp

我试图下载一个Excel文件(保存在服务器上)点击button。 当事件发生时,下载一个空白的excel文件而不是“WORK.xls”

<% strFile = "WORK.xls" Response.ContentType = "application/octet-stream" Response.AddHeader "Content-Disposition", "attachment; filename=" & strFile set app = Server.CreateObject("ADODB.Stream") app.open app.type = adTypeBinary app.LoadFromFile(Server.MapPath("WORK.xls")) response.binarywrite app.Read app.close Set app = nothing %> 

尝试这个:

 DownloadFile "WORK.xls" Private Sub DownloadFile(file) '--declare variables Dim strAbsFile Dim strFileExtension Dim objFSO Dim objFile Dim objStream '-- set absolute file location strAbsFile = Server.MapPath(file) '-- create FSO object to check if file exists and get properties Set objFSO = Server.CreateObject("Scripting.FileSystemObject") '-- check to see if the file exists If objFSO.FileExists(strAbsFile) Then Set objFile = objFSO.GetFile(strAbsFile) '-- first clear the response, and then set the appropriate headers Response.Clear '-- the filename you give it will be the one that is shown ' to the users by default when they save Response.AddHeader "Content-Disposition", "attachment; filename=" & objFile.Name Response.AddHeader "Content-Length", objFile.Size Response.ContentType = "application/octet-stream" Set objStream = Server.CreateObject("ADODB.Stream") objStream.Open '-- set as binary objStream.Type = 1 Response.CharSet = "UTF-8" '-- load into the stream the file objStream.LoadFromFile(strAbsFile) '-- send the stream in the response Response.BinaryWrite(objStream.Read) objStream.Close Set objStream = Nothing Set objFile = Nothing Else 'objFSO.FileExists(strAbsFile) Response.Clear Response.Write("No such file exists.") End If Set objFSO = Nothing End Sub 

链接: http : //www.evagoras.com/2011/02/08/downloading-any-file-using-asp-fso-and-the-adodb-stream-object/