2017-04-25 68 views
1

我有以下脚本从文件夹中返回最新文件,但我有一个问题,其中有2个文件实际上在同一时间创建,我需要确保我只选择特定的1例如SSIS从日期/时间和文件夹中获取最新文件

文件1 =名称“打开12345”

文件2 =名“关闭12345”

文件2文件1这样后在10秒,这是最新,但我需要忽略,只检索文件1,只是在作品中抛出一个扳手的文件名后的数字是随机的,所以我需要匹配的第一部分名称的使用仅

代码在此刻

Public Sub Main() 

    Dim recentFile 
    Dim fi As System.IO.FileInfo 
    Dim fis() As System.IO.FileInfo 
    Dim dir As New System.IO.DirectoryInfo("\\Test Folder\") 

    fis = dir.GetFiles() 
    For Each fi In fis 
     If (recentFile Is Nothing) Then 
      recentFile = fi 
     ElseIf (recentFile.LastWriteTime < fi.LastWriteTime) Then 
      recentFile = fi 
     End If 
    Next 

    recentFile.CopyTo("\\Test Folder\Import\Open.xls") 
    ' 
    Dts.TaskResult = Dts.Results.Success 
End Sub 

帮助表示赞赏

回答

0

思我已经插入校验回答它自己

如果MID(fi.Name,1,4) =“打开”这可能是任何名称只是调整长度(4),以匹配文本的长度比较

所以这部分变成

For Each fi In fis 
If Mid(fi.Name, 1, 4) = "Open" Then 
    If (recentFile Is Nothing) Then 
     recentFile = fi 
    ElseIf (recentFile.LastWriteTime < fi.LastWriteTime) Then 
     recentFile = fi 
    End If 
end if 
Next 
相关问题