【发布时间】:2015-10-12 21:04:42
【问题描述】:
我已成功运行下面的代码,逐行向浏览器显示文本文件:
<%
Filename = "/pages/test.txt"
Set FSO = server.createObject("Scripting.FileSystemObject")
Filepath = Server.MapPath(Filename)
Set file = FSO.GetFile(Filepath)
Set TextStream = file.OpenAsTextStream(1, -2)
Do While Not TextStream.AtEndOfStream
Line = TextStream.readline
Response.Write Line & "<br>"
Loop
Set TextStream = nothing
Set FSO = nothing
%>
我想在Set TextStream = nothing 语句之前再运行一次Do While Not TextStream.AtEndOfStream 循环。
原来我不能“仅仅”复制Do While 循环并将其放在第一个实例的下方。 TextStream 不再有任何结果。
有没有办法将TextStream 对象重置回流的开头?
我可以将行存储在一个数组中并利用它,但我想看看是否有更简单的路线。
【问题讨论】:
-
不使用
TextStream对象,但如果您在读取流后切换到使用ADO.Stream对象,则可以使用 'Position` 属性将流位置设置为0并读取再次流。ADODB.Stream在这方面要灵活得多。
标签: vbscript asp-classic do-while filesystemobject