2012-08-29 92 views
0

例如,我有以下目錄:如何根據VB.NET中的文件名將文件複製到文件夾?

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

我也有以下文件:

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

我的問題來了,當我試圖找出一種方法來file100.txt複製到目錄folder100,file101.txt到目錄folder101等等。

我可以輕易地編寫一個簡單的代碼來將每個文本文件複製到其相關的文件夾中,但由於我有很多目錄和文件需要應用,因此必須有一種方法來循環執行此任務,只是無法將我的頭圍繞在此。

任何幫助表示讚賞。

+2

將它** **始終遵循'fileXXX'和'fol​​derXXX'的格式? 'XXX'變成'XXXX'時會發生什麼? – freefaller

+0

@freefaller是的,它將始終遵循這種格式。它將始終是'xxx'。 – DoloWizard

+0

你還在需要幫助,還是提供足夠的答案讓你相處?如果是這樣,你應該考慮標記幫助回答的那個,所以我們知道你的問題已經解決了。 – freefaller

回答

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 
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 
相關問題