2016-10-19 4 views
1

Я хочу скопировать определенную папку и ее содержимое с помощью vb.net, методы, которые я нашел, просто копируют содержимое указанной папки, но не папку в целом. Я хочу папку, путь ведет к быть скопирована полностью, а не только contents.I этот код на данный момент:Копирование папки и ее содержимого в vb.net

Microsoft.VisualBasic.FileIO.FileSystem.CopyDirectory("C:\Users\Max\Desktop\test\" & sender.name, "C:\Users\Max\Desktop\test2") 
+4

https://msdn.microsoft.com/en-us/library/bb762914(v=vs.110).aspx?cs-save-lang=1&cs-lang=vb#code-snippet-1 – Neal

+0

Все еще только копирование содержимое папки, а не сама папка + содержимое. Если я не воспользуюсь этой функцией, так или иначе. – Max

ответ

0

Вы не можете просто скопировать каталог и все его содержимое с одной строки кода. Вы, однако, можете «вырезать и вставить» каталог с:

Directory.Move("C:\Users\Max\Desktop\test\" & sender.name, "C:\Users\Max\Desktop\test2\" & sender.name) 

Для копирования вам необходимо создать новую папку с таким же именем в каталоге назначения скопируйте содержимое в него:

Dim SourcePath As String = "C:\Users\Max\Desktop\test\" & sender.name 
Dim DestinationPath As String = "C:\Users\Max\Desktop\test2" 
Dim newDirectory As String = System.IO.Path.Combine(DestinationPath, Path.GetFileName(Path.GetDirectoryName(SourcePath))) 
If Not (Directory.Exists(newDirectory)) Then 
    Directory.CreateDirectory(newDirectory) 
End If 
Microsoft.VisualBasic.FileIO.FileSystem.CopyDirectory(SourcePath, newDirectory) 
Смежные вопросы