在讀取文字檔案以編輯其資料時,我想知道第一行是否存在。因為我不想更新其他行的資料。
我想在使用 ★ 標記的位置分支我的程式碼。
這樣做的最佳方法是什麼?
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