1

次の行を含むテキスト ファイルがあります。

11/01/2013  00:57:59    01  00  0238    POST UNIT ID

11/01/2013  00:58:07    01  80  0136    PRE UNIT ID

11/01/2013  00:58:16    01  80  0136    PRE UNIT ID

11/01/2013  00:58:22    01  00  0238    POST UNIT ID    

リストボックスのテキスト行を読み取って表示したいのですが、test.txt はログ ファイルであり、毎秒、このテキストに新しい行が挿入されます。タイマーを使用した私の方法では、同じ行が繰り返されます。テキストファイルに書かれた最新の行を表示するようにリストボックスを更新するための最良の解決策は何ですか? これはテキストファイルからの一種の更新だと思います...

Private Sub Form_Load()
    Timer1.Enabled = True
    Timer1.Interval = 1000

End Sub

Private Sub Timer1_Timer()

    filenum = FreeFile                      
    filepath = "C:\test.txt"

    Open filepath For Input As filenum       
    Do Until EOF(filenum)                   
        Line Input #filenum, LineText       
        List1.AddItem LineText         
    Loop                                    
    Close filenum

End Sub
4

1 に答える 1

2

ログ ファイルを追加する前に、リスト ボックスをクリアします。

Private Sub Form_Load()
Timer1.Enabled = True
Timer1.Interval = 1000

End Sub
Private Sub Timer1_Timer()

filenum = FreeFile                      
filepath = "C:\test.txt"

            Open filepath For Input As filenum       
            List1.Clear
            Do Until EOF(filenum)                   
                Line Input #filenum, LineText       
                List1.AddItem LineText         
            Loop                                    
            Close filenum
End Sub
于 2013-11-01T15:25:31.873 に答える