作 者 : 甘冀平 ;
假設你想建立一個簡單的留言簿,你可以建立一個資料庫,在其中儲存使用者的資訊。然而,如果並不需要資料庫的強大功能,使用FSO來儲存資訊將節省你的時間和金錢。並且,一些ISP也許限制了web上的資料庫應用。
假設你在一個表單中收集了一些使用者資訊,這裡是一個簡單表單HTML代碼:
< html>
< body>
< form action="formhandler.asp" method="post">
< input type="text" size="10" name="username">
< input type="text" size="10" name="homepage">
< input type="text" size="10" name="Email">
< /form>
< /body>
< /html>
再看看formhandler.asp中處理表單的代碼:
< %
' Get form info
strName = Request.Form("username")
strHomePage = Request.Form("homepage")
strEmail = Request.Form("Email")
' create the fso object
Set fso = Server.CreateObject("Scripting.FileSystemObject")
迄今為止,還沒有新鮮的東西,無非是擷取表單域的值並且賦值到變數。下面出現了有趣的部分 - 寫檔案:
path = "c: emp est.txt"
ForReading = 1, ForWriting = 2, ForAppending = 3
' open the file
set file = fso.opentextfile(path, ForAppending, TRUE)
' write the info to the file
file.write(strName) & vbcrlf
file.write(strHomePage) & vbcrlf
file.write(strEmail) & vbcrlf
' close and clean up
file.close
set file = nothing
set fso = nothing
回想一下,OpenTextFile方法返回一個TextStream對象,它是FSO模型中的另外一個對象。TextStream對象揭示了操作檔案內容的方法,比如寫、讀一行、跳過一行。VB常量vbcrlf產生一個分行符號。
在OpentextFile的命令參數中定義了TRUE,這就告訴了系統,如果檔案不存在,就建立它。如果檔案不存在,並且沒有定義TRUE參數,就會出錯。
現在轉到目錄c: emp,開啟test.txt,你可以看到如下的資訊:
User's name
User's home page
User's email
當然,這些單詞可以被輸入在表單中的任何內容所替換。