从文本文件读取数据时,首先要创建一个FileSystemObject对象实例,然后使用OpenTextFile方法返回一个TextStream对象实例,从文件中读取数据要使用TextStream对象的Read、ReadLine或ReadAll方法。
1.打开文件
FileSystemObject对象的OpenTextFile方法是用来打开指定的文件,返回一个TextStream对象,可以使用该对象对文件进行读、写和添加到结尾操作。
语法格式:
Object.OpenTextFile(filename,iomode,create,format)
2.读取文件时用到的方法
读取文件时,将用到TextStream对象的下列方法。
(1)Read方法:从TextStream文件中读入指定数目的字符并返回结果字符串。
语法格式:
Object.Read(Num)
(2)ReadLine方法:从TextStream文件中读入一整行字符(直到下一行但不包括下一行字符),并返回结果字符串。
语法格式:
Object.ReadLine
(3)ReadAll方法:读入全部TextStream文件并返回结果字符串。
语法格式:
Object.Read All
说明:对于大文件,使用ReadAll方法浪费内存资源。应该使用其他技术输入文件,例如按行读文件。
(4)Skip方法:在读取TextStream文件时跳过指定数目的字符。
语法格式:
Object.Skip(Num)
(5)SkipLine方法:在读取TextStream文件时跳过下一行。
语法格式:
Object.SkipLine
说明:跳过一行意味着读并放弃本行所有字符,但包括下一行字符内容。如果文件不是以读方式打开则会出现错误。
对打开的文件执行读写操作后,要使用TextStream对象的Close方法关闭该文件。
详细的参数设置详见表5-6。
3.读取文件时用到的属性
读取文件时,用到TextStream对象的属性详见表5-5。
【例5.4】本例说明如何读取文本文件中的内容。结果如图5-4所示。
图5-4 读取文本文件示例
文本文件命名为text.txt的代码如下:
中国古典文学
文件命名为5-4.asp的代码如下:
〈HTML〉
〈% @ LANGUAGE=″VBScript″%〉
〈HEAD〉(www.xing528.com)
〈TITLE〉读取文件示例〈/TITLE〉
〈/HEAD〉
〈%
Set fso=Server.CreateObject(″Scripting.FileSystemObject″)
Set txtFile=fso.OpenTextFile(Server.MapPath(″text.txt″))
Response.Write ″〈H2〉文本文件text.txt的内容如下:〈/H2〉″
′使用〈PRE〉...A〈/PRE〉标记包含预先格式化的文本
Response.Write ″〈PRE〉″
While Not txtFile.AtEndOfStream
Response.Write txtFile.ReadLine & ″〈BR〉″
Wend
txtFile.Close
Response.Write ″〈/PRE〉″
%〉
〈/BODY〉
〈/HTML〉
说明:FileSystemObject对象的OpenTextFile方法通常用来从文本文件中读取数据,其实也可以使用该方法向文本文件中追加数据。
【例5.5】本例说明如何向已有的文本文件中添加内容。
文件命名为5-5.asp的代码如下:
〈HTML〉
〈% @ LANGUAGE=″VBScript″%〉
〈HEAD〉
〈TITLE〉向已有文本文件中添加内容示例〈/TITLE〉
〈/HEAD〉
〈%
Set fso=Server.CreateObject(″Scripting.File SystemObject″)
Set txtFile=fso.OpenTextFile(Server.MapPath(″text.txt″),8,true)
txt File.Write Line(″欢迎浏览该网页″) ′添加内容
%〉
〈/BODY〉
〈/HTML〉
如果要创建一个站点日志,可以使用下面的脚本。这样当执行脚本时,用来请求页面的浏览器类型将被记录到文本文件txtFile中。
〈%
Set fso=Server .CreateObject (″Scripting.FileSystemObject″)
Set txt File=fso.OpenTextFile (Server .MapPath (″browser .log″),B,True)
txt File .WriteLineRequest .ServerVariables (″HTTP- USER-AGENT″)
txtFile .Close
%〉
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。