如何根据VB.NET中的文件名将文件复制到文件夹?

时间:2012-08-29 16:49:23

标签: vb.net visual-studio-2010

例如,我有以下目录:

C:\test\folder100
C:\test\folder101
C:\test\folder102

我还有以下文件:

C:\test\file100.txt
C:\test\file101.txt
C:\test\file102.txt

当我试图找到一种方法将file100.txt复制到目录folder100file101.txt复制到目录folder101时,我的问题就出现了,等等。

我可以轻松编写一个简单的代码来将每个文本文件复制到其相关文件夹中,但由于我有许多目录和文件要将其应用于此,因此必须有一种循环此任务的方法,我只是我无法绕过这个。

感谢任何帮助。

2 个答案:

答案 0 :(得分:1)

这些方面的内容可能会有所帮助:

Private Function GetFolderPath(ByVal filePath As String) As String
    Dim fileName As String = Path.GetFileNameWithoutExtension(filePath)
    Dim folderName As String = fileName.Substring("file".Length)
    Return Path.Combine("C:\test", folderName)
End Function

答案 1 :(得分:0)

    Dim mydir As New DirectoryInfo("c:\Mydir\")
    For Each myfile As FileInfo In mydir.GetFiles
        Dim newpath As String = myfile.FullName.Substring(0, myfile.Name.Length - myfile.Extension.Length)
        If New DirectoryInfo(newpath).Exists Then
            myfile.CopyTo(newpath)
        Else
            Directory.CreateDirectory(newpath)
            myfile.CopyTo(newpath)
        End If
    Next