仅将最新文件从一台服务器移动到另一台服务器

时间:2015-04-03 16:09:01

标签: vb.net

我正在尝试将最新创建或编辑的文件从目录移动到两个不同服务器上的另一个文件夹。我怎样才将最新文件从一个目录移动到下一个目录而不是文件夹中的所有文件?

以下是我用来移动文件的代码。

My.Computer.FileSystem.CopyDirectory("\\172.16.1.42\s$\SQLBackup\FWP", "\\172.16.1.22\F$\BackupRestore", True)

1 个答案:

答案 0 :(得分:1)

确定哪个文件是最新文件应该不会太难。一种简单的方法是检索有关目录中所有文件的信息,然后循环查看它们以查找最新文件。

你可以这样做:

Imports System.IO

Dim di As New IO.DirectoryInfo("c:\") ' Change this to match your directory
Dim diar1 As IO.FileInfo() = di.GetFiles()
Dim dra As IO.FileInfo

Dim mostRecentFile As IO.FileInfo = Nothing
Dim mostRecentTimeStamp As DateTime = Nothing

DateTime.TryParse("01/01/1900 0:00:00", mostRecentTimeStamp) ' Set to early date

For Each dra In diar1 ' Cycle through each file in directory
        If File.GetLastAccessTime(dra.FullName) > mostRecentTimeStamp Then
            mostRecentTimeStamp = File.GetLastAccessTime(dra.FullName)
            mostRecentFile = dra
        End If
Next

Debug.Print(mostRecentFile.FullName) ' Will show you the result
' Use mostRecentFile.Copy to copy to new directory

希望能解决您的问题。如果没有,请告诉我。此例程检测隐藏文件可能存在问题,因此如果您看到类似的内容,请回复此处。例如,您还需要添加代码以检测是否找不到新文件。