读书人

ASP依据URL来下载文件并保存到服务器本

发布时间: 2013-09-25 11:02:59 作者: rapoo

ASP根据URL来下载文件并保存到服务器本地
最近有个需求,需要用asp代码,根据提供的URL来下载文件并保存到服务器指定文件夹里,这个怎么实现呢,求高手路过过来提点下啊 ASP 下载
[解决办法]
ASP下载远程图片保存到本地
[解决办法]

引用:
上午没注意楼主的问题 这个才对

System.Net.WebClient myWebClient = new System.Net.WebClient();
//保存文件
myWebClient.DownloadFile("http://www.baidu.com/img/baidu_jgylogo3.gif", "D:\\save.gif");


人家asp啊。。。你们发.net代码做什么。。。

msxml.serverxmlhttp组件,获取到responseBody直接用adodb.stream以二进制的形式写入文件
[解决办法]
Function TransferFile(path, mimeType, filename)


' 下面是不希望下载的文件
FileExt = Mid(filename, InStrRev(filename, ".") + 1)
Select Case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "INC"
Response.Write "受保护文件,不能下载."
Response.End
End Select


Dim objFileSystem, objFile, objStream
Dim char
Dim sent
send=0
TransferFile = True
Set objFileSystem = Server.CreateObject( "Scripting.FileSystemObject")
Set objFile = objFileSystem.GetFile(Path)
Set objStream = objFile.OpenAsTextStream(ForReading, TristateTrue)
Response.AddHeader "content-type ", mimeType
response.AddHeader "Content-Disposition ", "attachment;filename= " & filename
Response.AddHeader "content-length ", objFile.Size
Do While Not objStream.AtEndOfStream


char = objStream.Read(1)
Response.BinaryWrite(char)
sent = sent + 1
If (sent MOD FILE_TRANSFER_SIZE) = 0 Then
Response.Flush
If Not Response.IsClientConnected Then
TransferFile = False
Exit Do
End If
End If
Loop

Response.Flush
If Not Response.IsClientConnected Then TransferFile = False
objStream.Close
Set objStream = Nothing
Set objFileSystem = Nothing

End Function
[解决办法]

引用:
Function TransferFile(path, mimeType, filename)


' 下面是不希望下载的文件
FileExt = Mid(filename, InStrRev(filename, ".") + 1)
Select Case UCase(FileExt)
Case "ASP", "ASA", "ASPX", "INC"
Response.Write "受保护文件,不能下载."
Response.End
End Select


Dim objFileSystem, objFile, objStream
Dim char
Dim sent
send=0
TransferFile = True
Set objFileSystem = Server.CreateObject( "Scripting.FileSystemObject")


Set objFile = objFileSystem.GetFile(Path)
Set objStream = objFile.OpenAsTextStream(ForReading, TristateTrue)
Response.AddHeader "content-type ", mimeType
response.AddHeader "Content-Disposition ", "attachment;filename= " & filename
Response.AddHeader "content-length ", objFile.Size
Do While Not objStream.AtEndOfStream
char = objStream.Read(1)
Response.BinaryWrite(char)
sent = sent + 1
If (sent MOD FILE_TRANSFER_SIZE) = 0 Then
Response.Flush
If Not Response.IsClientConnected Then
TransferFile = False
Exit Do
End If
End If
Loop

Response.Flush
If Not Response.IsClientConnected Then TransferFile = False
objStream.Close
Set objStream = Nothing
Set objFileSystem = Nothing

End Function



没读题就做题。。。

读书人网 >ASP

热点推荐