2011-11-19 88 views
1

我生成了一些文件(簡本)移動文件,並在同一時間

private static void GenFiles(int numbersToGenerate, string directory) 
{ 
    for (int i = 1; i <= numbersToGenerate; i++) 
    { 
     string fileName = Path.Combine(directory, "File" + i); 
     File.Create(fileName); 
    } 
} 

現在我告訴「生成100個文件,並創建10個文件夾(Folder1中,文件夾2-Folder3等)的地方創建目錄每個文件夾中有10個項目「

你會創建一個目錄中的所有文件,然後創建每個文件夾移動文件到文件夾,直到沒有文件離開?

private static void MoveToFolders(string targetDirectory,int numberOfFolders, int numberOfFilesGenerated) 
{ 
    int itemsPerFolder = numberOfFilesGenerated/numberOfFolders; 
    ????? 
    // 
} 

建議?

+6

家庭作業?這聽起來像是測試你將需求轉化爲工作產品的能力。如果是這樣,回答這個問題會對你造成傷害。這種技能是現實世界中必須具備的技能,而你開發它的最好方式是通過經驗和反覆試驗。如果這不是家庭作業,我很抱歉承認這一點。 – David

+0

@DavidStratton根本不是家庭作業。我需要移動/組織成千上萬的文件,只是想知道最好的/最快的方法是什麼。一個不好的例子會很棒。我的真實世界情景要複雜得多,我已經瞭解到當發佈問題越簡單越好。我不想通過發佈一個複雜的問題來混淆。 – user9969

+0

然後我會支持@ Tigran的回答。文件創建的嵌套循環是我如何做到的。 – David

回答

3

我會說在循環creare文件夾裏面創建一個文件。減少步驟來實現你的目標。

+0

這是一個不斷計算文件夾和移動的情況裏面的東西。你認爲這會比在一個文件夾中生成所有文件,然後將它們移動到其他文件夾更快。模擬器以一種方式,但效率更低?# – user9969

+0

對我來說,它似乎更快,因爲需要更少的步驟來實現所需的最終狀態。如果你創建並移動後,恕我直言,你應該在技術上做所有需要在第一個選項+文件移動。但我建議去衡量一下,特別是如果你在談論數千個文件。 – Tigran