當前位置:開發者網絡 >> 技術教程 >> ASP教程 >> 遠程腳本 >> 內容
精彩推薦
分類最新教程
分類熱點教程
    
取得遠程文件並保存到本地
作者:未知
日期:2005-02-28
人氣:
投稿:snow(轉貼)
來源:未知
字體:
收藏:加入瀏覽器收藏
以下正文:
<%
'****************************************************************************
'PageName:GetRemoteFiles.asp
'Function:Download the files to Server
'Author:xiaotian
'Last Modified at:2003-3-19
'****************************************************************************

'取得遠程文件並保存到本地
Function GetRemoteFiels(RemotePath, LocalPath, FileName)
Dim strBody
Dim FilePath

On Error Resume Next

'取得流
strBody = GetBody(RemotePath)
'取得保存的文件名
if Right(LocalPath, 1) <> "\" then LocalPath = LocalPath & "\"
FilePath = LocalPath & GetFileName(RemotePath, FileName)
'保存文件
if SaveToFile(strBody, FilePath) = true and err.Number = 0 then
GetRemoteFiles = true
else
GetRemoteFiles = false
end if

End Function

'遠程獲取內容
Function GetBody(url)
Dim Retrieval
'建立XMLHTTP對像
Set Retrieval = CreateObject("Microsoft.XMLHTTP")
With Retrieval
.Open "Get", url, False, "", ""
.Send
GetBody = .ResponseBody
End With
Set Retrieval = Nothing
End Function

'重組文件名
Function GetFileName(RemotePath, FileName)
Dim arrTmp
Dim strFileExt
arrTmp = Split(RemotePath, ".")
strFileExt = arrTmp(UBound(arrTmp))
GetFileName = FileName & "." & strFileExt
End Function

'將流內容保存為文件
Function SaveToFile(Stream, FilePath)
Dim objStream

On Error Resume Next

'建立ADODB.Stream對象,必須要ADO 2.5以上版本
Set objStream = Server.CreateObject("ADODB.Stream")
objStream.Type = 1 '以二進制模式打開
objStream.Open
objstream.write Stream
objstream.SaveToFile FilePath, 2
objstream.Close()
'關閉對象,釋放資源
Set objstream = Nothing

if err.Number <> 0 then
SaveToFile = false
else
SaveToFile = true
end if
End Function
%>

相關文章: