我有一个路径D:\ myfolder1 \ mysubfolder 我想将mysubfolder移动到根目录(D :) 这是我试图使用的代码,它给出了一个错误,指出无效参数。
Public Sub Movefolder()
Dim listFolders() As String = Directory.GetDirectories("D:\myfolder1")
Dim curf As String
For Each curf In listFolders 'listfolders(1) would be the mysubfolder
Dim DirInfo As New System.IO.DirectoryInfo(curf)
Directory.Move(curf, "D:\") 'This is where I get the error
Next
End Sub
有人可以指出我做错了什么,或者是否有更容易或至少另一种方式?
答案 0 :(得分:3)
根据docs,目标路径必须包含您要移动的文件或目录的新名称。
由于您已经为正在移动的文件夹检索了DirectoryInfo
,因此可以使用其Name
property获取要移动的目录的名称,然后可以将其附加到目标路径:< / p>
For Each curf In listFolders '// listfolders(1) would be the mysubfolder
Dim DirInfo As New System.IO.DirectoryInfo(curf)
Directory.Move(curf, Path.Combine("D:\", DirInfo.Name))
Next