Как скопировать файл из одного каталога в другой, создав папку, если эта папка не существует

У меня возникла проблема с копированием файла из одного каталога в другой путем создания папки, если эта папка не существует в целевом каталоге.

Пример:

  • Исходный путь: C: \ temp \ test \ 1.txt
  • Целевой путь: C: \ Data \

Если C: \ Data \ не содержит "временную" или "тестовую" папку, она должна быть создана перед копированием 1.txt .

Скопировано в C: \ Data \ temp \ test \ 1.txt

Ниже мой код. Но не работает ..

Private Sub btnBackup_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnBackup.Click
          Dim sourcepath As String = "C:\temp\test\1.txt"
    Dim DestPath As String = "C:\Data\"
    CopyDirectory(sourcepath, DestPath)
End Sub

Private Shared Sub CopyDirectory(sourcePath As String, destPath As String)
    If Not Directory.Exists(destPath) Then
        Directory.CreateDirectory(destPath)
    End If

    For Each file__1 As String In Directory.GetFiles(sourcePath)
        Dim dest As String = Path.Combine(destPath, Path.GetFileName(file__1))
        File.Copy(file__1, dest)
    Next

    For Each folder As String In Directory.GetDirectories(sourcePath)
        Dim dest As String = Path.Combine(destPath, Path.GetFileName(folder))
        CopyDirectory(folder, dest)
    Next
End Sub
6
задан Peter Mortensen 17 August 2013 в 10:58
поделиться