请问高手:
在一个文件夹中,大概6分钟左右会有一个以日期为文件名的文件产生,例2006012305.10,表示2006年1月23日5时10分,不过这个文件是在5时16分前后产生的,这个6分钟是不确定的,现在问题是:怎么用程序来判断这个文件夹中有一个新文件产生

解决方案 »

  1.   

    用一个变量保存最新文件名:Dim lastFile As String
    Dim myFile As StringmyFile = Dir("C:\myDir\*.*")Do Until myFile = ""
        If myFile > lastFile Then
            lastFile = myFile
            MsgBox "有新文件:" & lastFile
        End If
        myFile = Dir
    Loop
      

  2.   

    关键是我还要对这个新文件进行操作呢,所以还要确切地知道是哪个文件
    其实这个程序B是24小时工作的,当一个新文件C产生后(是另一个程序A生成),B就对C进行操作
      

  3.   

    to of123
    刚回复时 时间过长,我试下你的程序看看
      

  4.   

    用shell hook,具体的在网上搜索一下资料吧。
      

  5.   

    如果要处理:Dim lastFile As String
    Dim myFile As String
    Dim hasNew As BooleanhasNew = False
    myFile = Dir("C:\myDir\*.*")Do Until myFile = ""
        If myFile > lastFile Then
            lastFile = myFile
            hasNew = True
        End If
        myFile = Dir
    LoopIf Not hasNew Then Exit Sub
    '在这里处理文件
      

  6.   

    程序通过
    我将上面的语句放在Timer事件中,时间为1分钟,事件触发时,myFile=Dir("C:\myDir\*.*")句找到的第一个文件是一样的(,假设为2006051000.09A)。当过了24小时之后有大约240个文件,假设最新的文件是2006051100.09A,那么要查到这个最新文件就要做大约239次无用循环,时间再长就有更多无用功了,请问有没有办法记住上次搜索结果,每次只查一次呢