我试图在文本文件中搜索某些内容并返回行号 我尝试使用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
%>
无论如何,这不起作用,所以问题是:
有没有办法在搜索文本文件时返回行号。
答案 0 :(得分:3)
你需要让循环包含-Wl,-Bstatic
,以便它获取下一行,否则它会进入无限循环,这就是它超时的原因,而不是因为你使用{{1} }
你也只能在循环之前触发readline
一次,所以只有它在第一行才能找到它。同样需要在循环内部。
此外我已更改它以便它会发现多次出现,如果您不想要,那么您必须向InStr
添加另一个条件我还添加了一个-1表示响应,否则偏移1。
InStr