Path Exists Example
This page was last reviewed on Nov 17, 2022.
Dot Net Perls
Path exists. Does a specific path exist on the disk? Consider a C# program that requires a certain directory—it might store settings files, data or images.
With a special method, we can ensure a directory exists. This can make the program more reliable when it starts—the directory will always exist (in normal situations).
An example. We can almost never be sure that a directory is present. The user may delete it, or it might be lost due to some other interaction on the system.
Further Your installation or upgrade process might have mistakenly removed it, for reasons beyond your control.
However We can try to ensure a path exists, and create it if it doesn't, with a method similar to this one.
using System; using System.IO; class Program { public static void EnsurePathExists(string path) { // ... Set to folder path we must ensure exists. try { // ... If the directory doesn't exist, create it. if (!Directory.Exists(path)) { Directory.CreateDirectory(path); } } catch (Exception) { // Fail silently. } } static void Main() { // Test the method. EnsurePathExists(@"C:\programs\exampledir\"); Console.WriteLine("DONE"); } }
Notes, above program. This method checks to see if the path exists. If the path does not exist, we attempt to create the location—we try to ensure the location exists.
Also The code catches it own exceptions when it cannot do its job. We should use exceptions when code cannot do what it needs to do.
Detail This is a static class in the IO namespace. You can call Exists and CreateDirectory on it.
Notes, redundant check. The Directory.CreateDirectory method will do nothing if the directory already exists. So we do not need to call Directory.Exists first.
A summary. Here we ensure paths exist. It shows some examples of exception handling, and the Directory class in System.IO. The exception handling is not finished here.
Dot Net Perls is a collection of tested code examples. Pages are continually updated to stay current, with code correctness a top priority.
Sam Allen is passionate about computer languages. In the past, his work has been recommended by Apple and Microsoft and he has studied computers at a selective university in the United States.
This page was last updated on Nov 17, 2022 (simplify).
© 2007-2024 Sam Allen.