fso 作 者 : 甘冀平
現在已經有了一些使用者資訊儲存在檔案中,就像一個簡單的資料庫。假設有一個使用者想瞭解所有的訪問者,就要從登
記的資訊中分離出相關部分,因為沒有象資料庫一樣擁有結構化的列。
我們知道,在所建立的檔案中,第1行是使用者名稱,第2行是他們的首頁,第3行是他們的電子郵件地址。隨後登記的用
戶也是按照這樣的結構儲存他們的資訊,所以每3行將包含一個使用者的登記資訊。知道了這些,就可以編寫下面的代碼來顯
示資訊:
< %
' create the fso object
set fso = Server.Createobject("Scripting.FileSystemObject")
path = "c: emp est.txt"
' open the file
set file = fso.opentextfile(path, 1) < -- For
reading
接著,分析每一行,並且格式化資料:
do until file.AtEndOfStream
Response.write("Name: " & file.ReadLine & " ")
Response.write("Home Page: " & file.ReadLine & " ")
Response.write("Email: " & file.ReadLine & "< p>")
loop
' close and clean up
file.close
set file = nothing
set fso = nothing
%>
這裡僅僅做了一個非常簡單的輸出,但是你可以根據情況包含表格或者DHTML表單資訊。
如果已經正確地建立並寫入了檔案,上面的小小迴圈將合適地列出資料庫中的每一個人的資訊。ReadLine方法讀取1
行內容,直到遇到分行符號,隨後的ReadLine調用將讀取下一行。AtEndOfStream是TextStream對象的屬性,它告訴我們何時
遇到檔案的尾部。
假設由於某種原因,我們沒有正確地形成檔案,如果一個使用者只有2行資訊而不是3行,那麼就會產生一些錯誤。我們
這裡的迴圈取迴文件中的下3行資訊,如果沒有3行多的資訊,就將出現如下的錯誤資訊:
Server object error 'ASP 0177 : 800a003e'
所以,一定要添加一些錯誤處理代碼,以防檔案中插入了多餘的行或者少了必要的行資訊。