fso 作 者 : 甘冀平
到此,你對FSO可能已經有了很好的體會。讓我們再深入研究一步,來解決更複雜的難題。
首先,你可能希望對檔案改名。為了跟蹤所有的文檔,你將要重新命名它們以便唯一,這樣就可以被系統容易地區
別。很不幸,FSO不允許簡單的檔案改名操作,所以我們不得不修改一下。
< %
' create the fso object
set fso = Server.Createobject("Scripting.FileSystemObject")
path = "c: emp est.txt"
strDate = Replace(Date(), "/", "")
strDir = "c:inetpubwwwrootarticles" & strDate
strNewFileName = Hour(Now) & "_" & Minute(Now) & "_" &
second(Now) & ".html"
' open the old file
set file = fso.opentextfile(path, 1) < -- For reading
strText = file.readall
set file = nothing
' check for and/or create folder
if not fso.folderexists(Server.MapPath(strDir)) then
set f = fso.CreateFolder(Server.MapPath(strDir))
else
set f = fso.GetFolder(Server.MapPath(strDir))
end if
' create and write new file
set file = fso.Createtextfile(f.path & "" & strNewFileName)
file.write(strText)
set f = nothing
file.close
set file = nothing
' delete the old file
fso.DeleteFile(path & "" & rst("FileName") & i)
' clean up
set fso = nothing
%>
FSO能力的不足在這裡卻成了優勢,我們可以一次執行2步。首先,開啟檔案並讀入檔案的內容。假設這裡要建立一個
唯一的檔案夾和一個唯一的檔案來儲存文章。然而,因為檔案夾的路徑每天都將改變,所以必須首先檢查是否檔案夾已經
存在,如果不存在,就建立它。這在if not fso.folderexists程式碼片段完成。然後,取得那個路徑,建立一個新的檔案。新
檔案建立完成後,刪除掉舊檔案,這通過fso.DeleteFile來完成。
這2步就是:對檔案改名,然後移動到一個更合適的目錄下。注意,在這裡還可以對檔案進行更多地操作,比如在寫
入新檔案前進行一下內容的編輯。