Manipulating Files in .NET | C# Cheat Sheet¶
Enumerating Directories¶
List All Directories¶
To list all directories in a given folder:
IEnumerable<string> listOfDirectories = Directory.EnumerateDirectories("dir");
foreach (var dir in listOfDirectories) {
Console.WriteLine(dir);
}
List All Files in a Directory¶
To list all files within a specific directory:
IEnumerable<string> files = Directory.EnumerateFiles("dir");
foreach (var file in files) {
Console.WriteLine(file);
}
Recursively Enumerate Files in All Subdirectories¶
To search through a directory and its subdirectories for specific files:
IEnumerable<string> allFilesInAllFolders = Directory.EnumerateFiles("dir", "*.txt", SearchOption.AllDirectories);
foreach (var file in allFilesInAllFolders) {
Console.WriteLine(file);
}
Working with Directories¶
Get Current Directory¶
To get the path of the current working directory:
Accessing Special Folders¶
To retrieve paths to special system folders in a cross-platform way:
Creating Directories¶
To create a directory and any necessary subdirectories:
Directory.CreateDirectory(Path.Combine(Directory.GetCurrentDirectory(), "dir", "subDir", "newDir"));
Check If Directory Exists¶
To check if a specific directory exists:
Working with File Paths¶
Combining Paths¶
To correctly combine multiple path segments:
Get File Extension¶
To retrieve the file extension of a given filename:
Reading and Writing Files¶
Reading a File¶
To read all text from a file:
Writing to a File¶
To create or overwrite a file with specified content:
Appending to a File¶
To append data to an existing file, or create it if it doesn’t exist:
Working with File Information¶
Getting File Info¶
To get detailed information about a file: