У меня есть уникальный идентификатор, размещенный в файле журнала, я могу искать файл и добираться до него, как только я найду уникальный идентификатор в файле, который мне нужен найти другую строку (назвав ее строкой 2) после этого уникального идентификатора и скопировать самую следующую строку строки 2.найти строку в файле журнала и искать другую строку после первой строки
Ниже вы найдете мою функцию и, пожалуйста, предложите, как этого добиться.
Func getAuthResponse($LogfilePath, $AuthRespFilePath, $UniqueId, $search)
Global $iLine = 0, $sLine = ''
Global $hFile = FileOpen($LogfilePath)
If $hFile = -1 Then
MsgBox(0,'ERROR','Unable to open file for reading.')
Exit 1
EndIf ;If $hFile = -1 Then
; find the line that has the search string
While 1
$iLine += 1
$sLine = FileReadLine($hFile)
If @error = -1 Then ExitLoop
; finding the unique id in the log file
;ConsoleWrite($UniqueId & @LF)
If StringInStr($sLine, $UniqueId) Then
ConsoleWrite($sLine & @LF)
; assuming that unique id is found , now finding the phrase Auth response is as follow : after the unique id
$sNewLine = $sLine+
If StringInStr($sLine, $search) Then
ConsoleWrite($sLine & @LF)
//// SOME LOGIC ////
ExitLoop
EndIf ;If StringInStr($sLine, $search) Then
ExitLoop
EndIf ;If(StringInStr($sLine, $UniqueId) Then
WEnd ;While 1
FileClose($hFile)
EndFunc
ее не работает для меня. –
Это не очень полезно. Что не работает? Какой код выполняет ошибку. Этот код не проверен, и я просто сделал это очень быстро. – IkeRoyle