Swiftorial Logo
Home
Swift Lessons
Matchups
CodeSnaps
Tutorials
Career
Resources

Directory Operations in C#

Introduction

Directory operations are a fundamental part of file handling in C#. The .NET Framework provides a robust set of classes and methods to interact with the file system, enabling developers to create, delete, move, and enumerate directories and files. This tutorial will cover the basics of these operations with practical examples.

Creating a Directory

To create a directory, you can use the Directory.CreateDirectory method. This method creates all directories and subdirectories in the specified path unless they already exist.

Example:

Directory.CreateDirectory(@"C:\ExampleDirectory");

Checking if a Directory Exists

Before performing operations on a directory, it is often useful to check if it exists. This can be done using the Directory.Exists method.

Example:

if (Directory.Exists(@"C:\ExampleDirectory"))
{
    Console.WriteLine("Directory exists.");
}
else
{
    Console.WriteLine("Directory does not exist.");
}
                

Deleting a Directory

The Directory.Delete method deletes an empty directory. If you want to delete a directory and its contents, you need to pass a second argument as true.

Example:

// Delete an empty directory
Directory.Delete(@"C:\ExampleDirectory");

// Delete a directory and its contents
Directory.Delete(@"C:\ExampleDirectory", true);
                

Moving a Directory

To move a directory to a new location, you can use the Directory.Move method.

Example:

Directory.Move(@"C:\ExampleDirectory", @"C:\NewDirectoryLocation");

Enumerating Directories and Files

You can enumerate directories and files within a directory using methods like Directory.GetDirectories and Directory.GetFiles.

Example:

string[] directories = Directory.GetDirectories(@"C:\ExampleDirectory");
foreach (string dir in directories)
{
    Console.WriteLine(dir);
}

string[] files = Directory.GetFiles(@"C:\ExampleDirectory");
foreach (string file in files)
{
    Console.WriteLine(file);
}
                

Getting Directory Info

The DirectoryInfo class provides instance methods for creating, moving, and enumerating through directories and subdirectories. It is often more convenient to use DirectoryInfo when you need to perform multiple operations on the same directory.

Example:

DirectoryInfo dirInfo = new DirectoryInfo(@"C:\ExampleDirectory");
if (dirInfo.Exists)
{
    Console.WriteLine("Directory Name: " + dirInfo.Name);
    Console.WriteLine("Full Path: " + dirInfo.FullName);
    Console.WriteLine("Creation Time: " + dirInfo.CreationTime);
}
                

Conclusion

In this tutorial, we covered the basic directory operations in C#. These operations include creating, checking, deleting, moving directories, enumerating through directories and files, and retrieving directory information. Mastering these operations will help you effectively manage the file system in your C# applications.