Hey! If you love C# and building C# apps as much as I do, let's connect on Twitter or LinkedIn. I talk about this stuff all the time!

File Handling in C#

Unlock the secrets of efficient file management in C#! Learn how to expertly handle files with our comprehensive guide, covering everything from reading and writing files to deleting and manipulating their contents. Boost your C# skills today!


Updated October 18, 2023

In this article, we will explore the basics of file handling in C#. We will discuss how to read from files, write to files, and manipulate file metadata.

Reading from Files

To read from a file in C#, you can use the File class and its ReadAllText() method. This method reads the entire contents of the file and returns them as a string. Here’s an example:

string content = File.ReadAllText("example.txt");

In this example, we are reading the contents of a file named “example.txt”. The File class also has other methods for reading files, such as ReadLines() and ReadAllBytes().

Writing to Files

To write to a file in C#, you can use the File class and its WriteAllText() method. This method writes the contents of a string to the file. Here’s an example:

string content = "Hello, world!";
File.WriteAllText("example.txt", content);

In this example, we are writing the string “Hello, world!” to a file named “example.txt”.

Manipulating File Metadata

The File class also provides methods for manipulating file metadata, such as the file name, directory, and attributes. Here are some examples:

// Get the current file name
string filename = File.GetName("example.txt");

// Set the file name
File.SetName("example.txt", "new_name.txt");

// Get the file directory
string directory = File.GetDirectory("example.txt");

// Set the file directory
File.SetDirectory("example.txt", "new_directory");

// Get the file attributes
FileAttributes attributes = File.GetAttributes("example.txt");

// Set the file attributes
File.SetAttributes("example.txt", FileAttributes.ReadOnly);

In these examples, we are getting and setting various aspects of the file metadata, such as the name, directory, and attributes.

Exception Handling

When working with files, it’s important to handle exceptions that may occur. For example, if a file does not exist or is not found, the File class will throw an exception. Here’s an example of how to handle such an exception:

try
{
    string content = File.ReadAllText("example.txt");
}
catch (FileNotFoundException ex)
{
    Console.WriteLine("The file was not found.");
}

In this example, we are trying to read the contents of a file named “example.txt”. If the file does not exist, the File class will throw a FileNotFoundException, which we catch and print an error message.

Conclusion

In this article, we have covered the basics of file handling in C#. We have discussed how to read from files, write to files, and manipulate file metadata. Additionally, we have touched on exception handling, which is an important aspect of working with files in C#. With these skills, you should be able to handle a wide range of file-related tasks in your C# programming projects.