renameit_projects_visualstudio/RenameIt/DirectoriesInFolders.cs
Eugen Höglinger c958d101f4 Initialize
2024-10-09 10:04:04 +02:00

57 lines
1.7 KiB
C#

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace RenameIt
{
/// <summary>
/// List of Directories in Folders.
/// </summary>
internal class DirectoriesInFolders
{
/// <summary>
/// List of all Directories.
/// </summary>
public List<string> GetDirectoryArray { set; get; }
/// <summary>
/// Creates a list which contains all directorynames in a specific folder.
/// </summary>
/// <param name="root">Folder which contains files to be listed.</param>
/// <param name="subFolders">True for scanning subfolders.</param>
public DirectoriesInFolders(string root, bool subFolders)
{
GetDirectoryArray = GetDirectoryList(root, subFolders);
}
private List<string> GetDirectoryList(string root, bool subFolders)
{
List<string> directoryArray = new List<string>();
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;
}
}
}