2010-09-08 53 views
0

我正在使用Team Foundation系統,並且我有要求將所有結帳文件複製到本地文件夾以及使用C#的相同文件夾結構。我怎樣才能做到這一點?複製所有結帳文件


回答

0

我不知道你的「結賬文件」的意思,但如果你想複製一個目錄,你必須:

  1. 遞歸枚舉所有的文件和文件夾的頂級目錄。
  2. 對於您枚舉的每個項目,請在目標目錄中創建文件夾,或將源文件複製到目標目錄層次結構。如果調用與FullDirList("C:\MyProject\", *.*),它會枚舉所有文件

    static void FullDirList(DirectoryInfo dir, string searchPattern) 
    { 
        Console.WriteLine("Directory {0}", dir.FullName); 
        // list the files 
        foreach (FileInfo f in dir.GetFiles(searchPattern)) 
        { 
        Console.WriteLine("File {0}", f.FullName); 
        } 
        // process each directory 
        foreach (DirectoryInfo d in dir.GetDirectories()) 
        { 
        FullDirList(d, searchPattern); 
        } 
    } 
    

下面將列舉所有的文件和文件夾的目錄中。

要創建目標文件夾或複製文件,請將呼叫更改爲Console.WriteLine,以便它們執行相應的操作。所有你需要在目標文件或文件夾名稱中更改的是根文件夾名稱(也就是說,如果從C:\ MyProject \複製到C:\ MyProjectCopy \,那麼目標文件只是f.FullName與C :\ MyProject \由C:\ MyProjectCopy取代)。

+1

如果您只想複製已簽出的文件,則添加一個條件以僅複製可寫文件(簽入文件將文件的只讀屬性從文件中刪除) – 2010-09-08 21:53:18

相關問題