2

我有一个路径 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

任何人都可以指出我做错了什么,或者有更简单或至少另一种方法吗?

4

1 回答 1

3

根据文档,目标路径必须包含您要移动的文件或目录的新名称。

由于您已经检索到DirectoryInfo要移动的文件夹,您可以使用它的Name属性来获取要移动的目录的名称,然后您可以将其附加到目标路径:

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
于 2013-07-27T15:15:41.413 回答