所以我有一個存放一堆配置文件的目錄,但是現在我也有幾個也包含配置文件的子目錄。我有一個收集每個站點所有配置文件的功能,但現在它只收集目錄中的文件,而不是子文件夾。舊代碼:快速和骯髒的方式遞歸收集子目錄中的文件?
string MasterList = "ConfigsForStation1.txt";
string dirC = "..\\config\\Station1\\";
foreach (FileInfo fileC in dirC.GetFiles())
{
if(!System.IO.Path.GetExtension(fileC.FullName).EndsWith(".confg"))
{ WriteToList(fileC,MasterList);}
}
現在有了這個子目錄的東西來實現它沿着以上的這些行:
string MasterList = ...;
string dirC = ...;
//collect files in sub directories substations 1 & 2
foreach(DirectoryInfo Dx in dirC.GetDirectories())
{ foreach(FileInfo fileC in Dx.GetFiles())
{...}
}
//collect files in parent directory station 1
foreach(FileInfo fileC in dirC.GetFiles())
{...}
我的問題是:是否有從所有子文件夾收集文件而不是巢更清潔的方式一個foreach裏的foreach?然後在父母身上進行第三次傳遞。它感覺不錯,我覺得像dirC.getAllsub()這樣的命令會對我這樣做嗎?只是尋找提示和想法來清理代碼。
您已經使用了術語'recursive',但是您沒有實現真正的遞歸方法。 – DonBoitnott