<p>FSO使用教程6 -- 如何使用FSO读取文件</p>
<p>如何使用FSO读取文件-FSO使用教程6<br />
TextStream对象所提供用来读取文件的方法有三种:ReadLine、Read及ReadAll。在调用这几个方法之前,必须注意文件结尾的问题----当整个文件的内容都被读完时,若再调用ReadLine,Read、ReadAll等方法,则会产生“输入超出文件结尾”的错误(错误编码=62)。<br />
因此比较好的习惯是在调用ReadLine、Read及ReadAll之前,先读取TextStream对象的atEndOfStream属性值,以判断文件是否已到达结尾的位置,其程序大致如下:<br />
'txt为一TextStream对象<br />
If Not txt.atEndOfStream Then '先确定还没有到达结尾的位置<br />
'调用txt.ReadLine、Read、ReadAll等方法<br />
End If<br />
六、如何用FSO读取文件:<br />
方法1:ReadLine<br />
调用格式:(从文件中读取一行数据)<br />
'txt为一TextStream对象<br />
If Not txt.atEndOfStream Then '先确定还没有到达结尾的位置<br />
Line = txt.ReadLine '读取一行数据<br />
Response.Write Line & "<br>"<br />
End If<br />
方法2:ReadAll<br />
调用格式:(把文件所有内容一次读出)<br />
'txt为一TextStream对象<br />
If Not txt.atEndOfStream Then '先确定还没有到达结尾的位置<br />
Content = txt.ReadAll '读取整个文件的数据<br />
Lines = Replace(Content, vbCrlf, "<br>") '将文本内分行字符vbCrlf换成HTML换行标记"<br>"<br />
Response.Write Lines<br />
End If<br />
方法3:Read(N)<br />
调用格式:(从文件中读取N个字节的数据)<br />
'txt为一TextStream对象<br />
If Not txt.atEndOfStream Then '先确定还没有到达结尾的位置<br />
Content = txt.Read(30) '读取30个字节的数据<br />
Response.Write Content<br />
End If<br />
源码示例1:(利用ReadAll方法读取File1.txt内容,并显示出来)<br />
<%<br />
'==================================================<br />
'作者:阿里西西<br />
'网址:<a href="http://www.alixixi.com/">http://www.alixixi.com/</a><br />
'源码:FSO读取文件全部内容示例<br />
'时间:2005年12月17日<br />
'==================================================<br />
Set fs = Server.CreateObject("Scripting.FileSystemObject")<br />
File = Server.MapPath("File1.txt")<br />
Set txt = fs.OpenTextFile(File) <br />
If Not txt.atEndOfStream Then '先确定还没有到达结尾的位置<br />
Content = txt.ReadAll '读取整个文件的数据<br />
Lines = Replace(Content, vbCrlf, "<br>") '将文本内分行字符vbCrlf换成HTML换行标记"<br>"<br />
Response.Write Lines<br />
End If<br />
%><br />
源码示例2:(利用ReadLine方法读取File1.txt一行数据内容,并显示出来)<br />
<%<br />
'================================================<br />
'作者:阿里西西<br />
'网址:<a href="http://www.alixixi.com/">http://www.alixixi.com/</a><br />
'源码:FSO读取文件一行内容示例<br />
'时间:2005年12月17日<br />
'================================================<br />
Set fs = Server.CreateObject("Scripting.FileSystemObject")<br />
File = Server.MapPath("File1.txt")<br />
Set txt = fs.OpenTextFile(File) <br />
If Not txt.atEndOfStream Then '先确定还没有到达结尾的位置<br />
Line = txt.ReadLine '读取一行数据<br />
Response.Write Line & "<br>"<br />
End If<br />
%></p>