来源:www.cncfan.com | 2006-4-5 | (有1901人读过)
现在已经有了一些用户信息保存在文件中,就像一个简单的数据库。假设有一个用户想了解所有的访问者,就要从登 记的信息中分离出相关部分,因为没有象数据库一样拥有结构化的列。
我们知道,在所创建的文件中,第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'
所以,一定要添加一些错误处理代码,以防文件中插入了多余的行或者少了必要的行信息。
|