Я пытаюсь создать программу, которая покажет все файлы и каталоги в данном каталоге и размер каждого элемента. для размера папок Я использовал https://stackoverflow.com/a/2981241/4645644, поскольку он кажется приятным и понятным для меня. Я заметил, что когда я пытаюсь использовать GetFiles() или GetDirecories(), я получаю исключение, если его нет. Я попытался написать консоль, когда это произойдет, но ничего не записано на консоль, но она не делает , попробуйте, и я не понимаю, что происходит или что я пропустил.Исключение исключение
public static void Main(string[] args)
{
Console.WriteLine("write path folder");
string path = Console.ReadLine();
DirectoryInfo di = new DirectoryInfo(@path);
//int check=1;
bool iterating = true;
if (!Directory.Exists(path))
{
Console.WriteLine("{0} not found , path is wrong or there is no such directory", path);
}
else
{
while (iterating)
{
Console.WriteLine("Name,Root,Parent -> {0},{1},{2}", di.Name, di.Root, di.Parent);
Console.WriteLine("{0} full size is : {1}", di.Name, DirSize(di));
try
{
foreach (DirectoryInfo sfolder in di.GetDirectories())
{
Console.WriteLine("Folder Name: {0} , Folder size - {1} KB", sfolder.Name, DirSize(sfolder));
}
}
catch
{
Console.WriteLine("No subfolder in thie folder : {0}", di.FullName);
}
try
{
foreach (FileInfo sfile in di.GetFiles())
{
Console.WriteLine("File name : {0} , File size - {1} KB", sfile.Name, sfile.Length);
}
}
catch
{
Console.WriteLine("No files in thie folder : {0}", di.FullName);
}
iterating = false;
}
}
}
Что происходит, когда вы проходите через отладчик? Где поведение отличается от того, что вы ожидаете? – David
@David, если я вхожу в папку, содержащую вложенные папки и файлы, которые она работает. Но если папка не содержит вложенных папок или не содержит файлов, то она просто выходит из попытки, но не переходит к catch – maor
Если она работает, то что проблема? – David