using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace RenameIt { /// /// List of Directories in Folders. /// internal class DirectoriesInFolders { /// /// List of all Directories. /// public List GetDirectoryArray { set; get; } /// /// Creates a list which contains all directorynames in a specific folder. /// /// Folder which contains files to be listed. /// True for scanning subfolders. public DirectoriesInFolders(string root, bool subFolders) { GetDirectoryArray = GetDirectoryList(root, subFolders); } private List GetDirectoryList(string root, bool subFolders) { List directoryArray = new List(); try { string[] Directories = System.IO.Directory.GetDirectories(root); string[] Folders = System.IO.Directory.GetDirectories(root); for (int i = 0; i < Directories.Length; i++) { directoryArray.Add(Directories[i].ToString()); } if (subFolders == true) { for (int i = 0; i < Folders.Length; i++) { directoryArray.AddRange(GetDirectoryList(Folders[i], subFolders)); } } } catch (Exception Ex) { throw (Ex); } return directoryArray; } } }