Ссылка на этот вопрос / код:
Как скопировать папку и все подпапки и файлы в .NET?
Я пытаюсь скопировать банчиз подкаталогов в другой каталог.Я хочу обновить этот код:
Dim fso As System.Object = New System.Object
fso = CreateObject("scripting.filesystemobject")
fso.copyfolder(sour, dest)
Однако я получаю эту ошибку:
System.IO.DirectoryNotFoundException: Не удалось найти часть пути 'C: \ Temp \ Summer2011 \ Newfolder \ Копировать новый текстовый документ.txt '.в System.IO._E_Error.WinIOError (Int32 errorCode, String MaybeFullPath) в System.IO.File.InternalCopy (String sourceFileName, String destFileName, перезапись логического значения) в System.IO.File.Copy (String sourceFileName, String destFileName ..).etc
С этой версией .NET
Public Overrides Sub OnClick()
Dim sour As String = "C:\Temp243"
Dim dest As String = "C:\Temp\Summer2011\"
CopyDirectory(sour, dest)
End Sub
Private Sub CopyDirectory(ByVal SourcePath As String, ByVal DestPath As String)
If Directory.Exists(DestPath) Then
Directory.CreateDirectory(DestPath)
End If
For Each File As String In Directory.GetFiles(SourcePath)
Dim dest As String = IO.Path.Combine(DestPath, IO.Path.GetFileName(File))
IO.File.Copy(File, dest) '<<<ERROR HERE
Next
For Each folder As String In Directory.GetDirectories(SourcePath)
Dim dd As String = IO.Path.Combine(DestPath, IO.Path.GetFileName(folder))
CopyDirectory(folder, dd)
Next
End Sub
Есть ли более простой способ сделать это с меньшим количеством строк кода, как в версии fso As System.Object?Кроме того, у меня импортирован System.IO, однако File.Copy и Directory.GetFiles не окрашены в синий цвет, это может быть проблемой?Система загружена в качестве справки.
Спасибо!