From 86d47045975d4f7bea1f6f722ce523a5a5233d16 Mon Sep 17 00:00:00 2001 From: Adam Sitnik Date: Tue, 6 May 2025 11:35:31 +0200 Subject: [PATCH] Don't catch all exceptions in Directory.CreateDirectory example --- .../CreateDirectory/dir_createdir.cs | 35 ++++++++++--------- 1 file changed, 18 insertions(+), 17 deletions(-) diff --git a/snippets/csharp/System.IO/Directory/CreateDirectory/dir_createdir.cs b/snippets/csharp/System.IO/Directory/CreateDirectory/dir_createdir.cs index e1da226f48b..532054c77bd 100644 --- a/snippets/csharp/System.IO/Directory/CreateDirectory/dir_createdir.cs +++ b/snippets/csharp/System.IO/Directory/CreateDirectory/dir_createdir.cs @@ -8,29 +8,30 @@ public static void Main() { // Specify the directory you want to manipulate. string path = @"c:\MyDir"; - + + // Determine whether the directory exists. + if (Directory.Exists(path)) + { + Console.WriteLine("That path exists already."); + return; + } + + DirectoryInfo di; try { - // Determine whether the directory exists. - if (Directory.Exists(path)) - { - Console.WriteLine("That path exists already."); - return; - } - // Try to create the directory. - DirectoryInfo di = Directory.CreateDirectory(path); + di = Directory.CreateDirectory(path); Console.WriteLine("The directory was created successfully at {0}.", Directory.GetCreationTime(path)); - - // Delete the directory. - di.Delete(); - Console.WriteLine("The directory was deleted successfully."); } - catch (Exception e) + catch (UnauthorizedAccessException e) { - Console.WriteLine("The process failed: {0}", e.ToString()); + Console.WriteLine("The caller does not have the required permission to create `{0}`", path); + return; } - finally {} + + // Delete the directory. + di.Delete(); + Console.WriteLine("The directory was deleted successfully."); } } -// \ No newline at end of file +//