ASP 下载时重命名已上传文件的新下载文件名的实现代码

时间:2022-09-14 16:57:01

问题:我想上传文件时后改名,下载时又将名改回来。 
如:我上传一张“我的照片.jpg”上传后改为系统数名“20040302001.jpg”下载时又改回“我的照片.jpg” 
其中的保存新旧文件名都用数据库(已做) 
就是下载时的改名做不出来。 

代码: 

复制代码代码如下:


<% 
function dl(f,n) 
on error resume next 
Set S=CreateObject( "Adodb.Stream ") 
S.Mode=3 
S.Type=1 
S.Open 
S.LoadFromFile(f) 
if Err.Number> 0 then 
Response.Status= "404 " 
else 
Response.ContentType= "application/octet-stream " 
Response.AddHeader "Content-Disposition: ", "attachment; filename= " & n 
Range=Mid(Request.ServerVariables( "HTTP_RANGE "),7) 
if Range= " " then 
Response.BinaryWrite(S.Read) 
else 
S.position=Clng(Split(Range, "- ")(0)) 
Response.BinaryWrite(S.Read) 
End if 
end if 
Response.End 
end function 
%> 


函数使用示例: 

复制代码代码如下:


call dl(Server.MapPath( "download/20040302001.jpg "), "我的照片.jpg ")