搜索 returns 行号

Search returns line number

我正在尝试在文本文件中搜索内容并返回行号。
我尝试使用 instr 获取行号,但是脚本超时了。

<%
Const ForReading = 1

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile(Server.MapPath("evewhdb.txt"), 1)

FSOContents = objTextFile.readline
SResult = InStr(1,FSOContents,"A123456",1)

If Sresult <>0 Then
    Response.Write "line is: " & objTextFile.Line

Else
    Do While Not objTextFile.AtEndOfStream
    Loop
End If

Set objFSO = nothing
Set objTextFile = nothing
%>

总之,这不行,所以问题是:
有什么方法可以在搜索文本文件时返回行号。

您需要让循环包含 readline,以便它获取下一行,否则它会进入无限循环,这就是它超时的原因,而不是因为您正在使用 InStr

你也只触发一次 InStr,在循环之前,所以它只会在第一行找到它。同样,这需要在循环内。

我还对其进行了更改,以便它可以找到多次出现的情况,如果您不想这样,则必须向 Do While 添加另一个条件我还向response,否则抵消1。

Set objFSO = CreateObject("Scripting.FileSystemObject")
Set objTextFile = objFSO.OpenTextFile(Server.MapPath("evewhdb.txt"), 1)

FSOContents = objTextFile.readline
Do While Not objTextFile.AtEndOfStream
    SResult = InStr(1,FSOContents,"A123456",1)
    If Sresult <>0 Then
        Response.Write "line is: " & objTextFile.Line  - 1 & "<BR>"
    End If
    FSOContents = objTextFile.readline
Loop

Set objFSO = nothing
Set objTextFile = nothing