一、读取文本文件的步骤如下:
1、创建 FileSystemObject 对象实例;
<% Set fso=Server.CreateObject("Scripting.FileSystemObject") %>
2、使用FileSystemObject对象的OpenTextFile方法返回一个 TextStream 对象实例;
<% Set txtFile=fso.OpenTextFile(filename[, iomode[, create[, format]]]) %>
3、使用 TextStream 对象的 Read 、ReadLine 、 ReadAll 、Skip 或 SkipLine 方法从文件中读取数据。
注:下面我们以 OpenTextFile 方法的各参数作一下注解:
1)txtFile :由OpenText 方法返回的一个TextStream 对象的实例名;
2) fso :必选参数,指定 FileSystemObject 对象的名称;
3) filename :必选参数,是一个字符串表达式,用于指定要打开的文件名称;
4)ipmode :是可选参数,用于指定文件的输入/输出模式:
* 如果该参数为1或省略,则以只读模式打开文件,不能对此文件进行写操作;
* 如果该参数为2,则以只写方式打开文件,不能对此文件进行读操作;
* 如果该参数为8,则打开文件并在文件末尾进行写操作。
5)create 是可选参数,取 Boolean 值,指出指定的 filename 不存在时是否能够创建新文件:
* 如果该参数为 True,允许创建新文件;
* 如果该参数为 False 或省略,不允许创建新文件。
6)format ;是可选参数,指定以何种格式打开文件:
* 如果该参数为0或省略,以ASCII 格式打开文件
* 如果为-1,以Unicode 格式打开文件;
* 如果该参数为-2,则以系统默认格式打开文件。
二、读取文件时用到的方法如下表:
TextStream 对象的方法
方 法 | 描述 / 表达式 / 注解 |
Read | 从文件指针的位置读取后面的Num个字符,然后存放至字符串。 |
object.Read(characters) | |
参数object指定TextStream对象的名称,Characters参数指定要从文件读的字符串数目。 | |
ReadAll | 读取整个文件,然后存放至字符串。 |
object.ReadAll | |
参数object指定TextStream对象的名称。 | |
ReadLine | 从文件指针的位置读取一行,然后存放至字符串。 |
object.ReadLine | |
参数object指定TextStream对象的名称。 | |
Skip | 读取文件时跳过 Num 个字符。 |
object.Skip(characters) | |
参数object指定TextStream对象的名称,Characters参数指定要从文件读的字符串数目。 | |
SkipLine | 读取文件跳过一行。 |
object.SkipLin | |
参数object指定TextStream对象的名称。 |
注:1)跳过一行意味着读并放弃本行所有字符,如果文件不是以读方式打开则会出现错误。
2) 对打开的文件执行读写操作后,应使用 TextStream 对象的 Close 方法关闭文件。
三、实例:本实例说明如何利用 TextStream 对象的属性和方法读取文本文件的内容。代码如下:
1) 现有的文本文件 text.txt 的内容如下(text.txt):
红豆
[唐] 王维
红豆生南国,春来发几枝。
愿君多采撷,此物最相思。
2) 读取上面文本文件的代码如下(read/1.asp):
<html><% @ language="vbscript" %><head><title>读取文件示例</title></head><body><%set fso=server.CreateObject("Scripting.FileSystemObject")Set txtFile=fso.OpenTextFile(Server.MapPath("text.txt"))Response.Write "<h3>文本文件text.txt的内容如下:</h3>"Response.Write "<hr width='50%' color='#cc9999'>"'使用<PRE>...</PRE>标记包含预先格式化的文件Response.Write "<PRE>"While Not txtFile.AtEndOfStreamResponse.Write "<center>" & txtFile.ReadLine & "</center><br>"WendtxtFile.CloseResponse.Write "<PRE>"%></body></html>
零七网部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与零七网进行文章共享合作。