Я хотел бы знать первую строку или нет при чтении текстового файла для редактирования его данных. Потому что я не хочу обновлять эти данные на других строках.
Я хочу разветвить свой код в позиции, отмеченной знаком ★.
Как лучше всего это сделать?
Set file = FSO.OpenTextFile(filepath)
Do Until file.AtEndOfStream
line = file.ReadLine
If ★ Then
'edit data of first line
ElseIf ... Then 'other lines' condition
'update data of other lines
End If
'Write line to text file
Loop
решение1
Это довольно тривиально, но вам придется выполнить эту проверку, прежде чем читать первую строку.
Если вы всегда открываете файл самостоятельно, вы можете быть уверены, что ваша первая итерация находится в начале файла:
Set file = FSO.OpenTextFile(filepath)
Set firstline = True
Do Until file.AtEndOfStream
line = file.ReadLine
If firstline Then
firstline = False
'Do first line stuff
ElseIf ...
End If
Loop
Если вы не уверены, что файл действительно будет в начале (т.е. вы не открываете его сами в этой части кода):
Set file = FSO.OpenTextFile(filepath)
Do Until file.AtEndOfStream
line = file.ReadLine
If file.Line == 2 Then ' we are actually at the second line now (after reading)
'Do first line stuff
ElseIf ...
End If
Loop