I have a text file with Folder Paths which looks like this
Folder1
Folder1/SubFolder1
Folder1/SubFolder1/SubSubFolder1
Folder1/SubFolder1/SubSubFolder2
Folder1/SubFolder1/SubSubFolder3
Folder1/SubFolder1/SubSubFolder4
Folder1/SubFolder2
Folder1/SubFolder2/SubSubFolder1
Folder1/SubFolder2/SubSubFolder2
Folder1/SubFolder2/SubSubFolder3
Folder1/SubFolder2/SubSubFolder4
Folder1/SubFolder2/SubSubFolder5
Folder1/SubFolder2/SubSubFolder6
Folder1/SubFolder2/SubSubFolder6/SubSubSubFolder1
Folder1/SubFolder3
Folder2
Folder2/SubFolder1
Folder2/SubFolder1/SubSubFolder1
Folder2/SubFolder1/SubSubFolder2
Folder2/SubFolder1/SubSubFolder3
Folder2/SubFolder1/SubSubFolder4
Folder2/SubFolder2
Folder2/SubFolder2/SubSubFolder1
Folder2/SubFolder2/SubSubFolder2
Folder2/SubFolder2/SubSubFolder3
Folder2/SubFolder2/SubSubFolder4
Folder2/SubFolder2/SubSubFolder5
Folder2/SubFolder2/SubSubFolder6
Folder2/SubFolder2/SubSubFolder7
Folder2/SubFolder2/SubSubFolder6/SubSubSubFolder1
Folder2/SubFolder3
Folder2/SubFolder4
Now What I want is a dictionary of string and int which saves folder name and count
number of files/folder in it (only Top Level)
Folder1, 3 // SubFolder1, SubFolder2, SubFolder3
Folder1/SubFolder1,4 // SubSubFolder1, SubSubFolder2, SubSubFolder3,
SubSubFolder4/Folder1/SubFolder2,6 // SubSubFolder1, SubSubFolder2, SubSubFolder3, SubSubFolder4, SubSubFolder5, SubSubFolder6
Folder1/SubFolder2/SubSubFolder6,1 //SubSubSubFolder1
Folder1/SubFolder3,0
Folder2,4 // SubFolder1, SubFolder2, SubFolder3, SubFolder4
Folder2/SubFolder1,4 // SubSubFolder1, SubSubFolder2, SubSubFolder3, SubSubFolder4
Folder2/SubFolder2,7 // SubSubFolder1, SubSubFolder2, SubSubFolder3, SubSubFolder4, SubSubFolder5, SubSubFolder6, SubSubFolder7
Folder2/SubFolder2/SubSubFolder6,1 //SubSubSubFolder1
Folder2/SubFolder3,0
Folder2/SubFolder4,0
I can iterate it over all lines , but I guess it will get a bit complicated and messy
foreach (var line in allLines)
{
var subFolderCount = 0;
var subFolderPath = Path.Combine(folderPath, line);
//...
}
but I was wondering is there any easier and efficient way to do this?