如何在阅读一行时将光标放在前面,以便 AtEndOfStream 检查工作

How to bring the cursor on the front while reading a line so that AtEndOfStream check works

我有一个包含 10 条记录的文件。我正在尝试使用下面的内容阅读它。现在发生的事情是我需要从第一行循环查找一些公司名称并需要使用该名称创建一个文件(这就是我在 if 循环中所做的)。

Else 中,我需要对所有行进行一些数据挖掘,包括已读取的第一行。现在因为 ReadLine 读取一行然后将光标留在行尾(在下面的情况下光标将在测试之后),所以在下面的读取顺序将被 1 弄乱,或者第一行或最后一行将被遗漏(取决于您重新阅读该行的位置)。

这只是为了测试(请保留这个。这是文中引用的示例)

Set tsIn = fso.OpenTextFile("F:kushal94c.csv", 1)
Do While Not tsIn.AtEndOfStream 
    If firstRead Then
        l = tsIn.Skipline ' skip the header row
        l = tsIn.Readline
        dim tsOut : Set tsOut = fso.CreateTextFile("..\HCR Files\" & _
            ucase(formatFileDate(getSafeString(l))) & ".e", true, tristatefalse)
    Else
        l = tsIn.Readline
        l = left(l, (len(l) - 1))
        l = split(l, chr(34) & "," & chr(34))
        'All other stuff
    End if
Loop
Dim tsOut, firstRead

Set tsIn = fso.OpenTextFile("F:kushal94c.csv", 1)

If Not tsIn.AtEndOfStream Then tsIn.Skipline  'skip the header row

firstRead = True

Do While Not tsIn.AtEndOfStream 

    l = tsIn.Readline

    'save the first line
    If firstRead Then
        Set tsOut = fso.CreateTextFile("..\HCR Files\" & _
                   ucase(formatFileDate(getSafeString(l))) & _
                    ".e", true, tristatefalse)
        firstRead = False
    End If

    l = left(l, (len(l) - 1))
    l = split(l, chr(34) & "," & chr(34))
    'etc etc

Loop