2012-11-07 123 views
0

我有這個腳本,但想加強它,在沒有文件的C:從R:驅動器複製一個。目前正在檢查文件是否存在。Vb文件存在腳本

目前此腳本將在單個文件夾\ SCRIPTS中的多個文件上運行。 正如我重複每個不同的文件名稱的聲明(我知道文件名)檢查R:\ SCRIPTS中的所有文件並與C:\ SCRIPTS複製或覆蓋文件比較的更經濟的方法將是很好的如果任何人有可能幫助的片段

Const OverwriteExisting = TRUE 

Set objFSO = CreateObject("Scripting.FileSystemObject") 

Set objLocalFile = objFSO.GetFile("C:\SCRIPT\SCRIPTTEXT.txt") 
dtmLocalDate = objLocalFile.DateLastModified 

Set objServerFile = objFSO.GetFile("R:\SCRIPT\SCRIPTTEXT.txt") 
dtmServerDate = objServerFile.DateLastModified 

If dtmLocalDate < dtmServerDate Then 
    objFSO.CopyFile objServerFile.Path, objLocalFile.Path, OverwriteExisting 
End If 

回答

1
using System.IO; 

Dim ServerFolder As New IO.DirectoryInfo("R:\SCRIPT") 
Dim LocalFolder As New IO.DirectoryInfo("C:\SCRIPT") 

For Each ServerFile In ServerFolder.GetFiles 
    If IO.File.Exists(LocalFolder.FullName & "\" & ServerFile.Name) Then 
     Dim LocalFile As New IO.FileInfo(LocalFolder.FullName & "\" & ServerFile.Name) 
     If ServerFile.LastWriteTime > LocalFile.LastWriteTime Then 
      IO.File.Copy(ServerFile.FullName, LocalFile.FullName, True) 
     End If 
    Else 
     IO.File.Copy(ServerFile.FullName, LocalFolder.FullName & "\" & ServerFile.Name) 
    End If 
Next