Reading Text Files in C#
Introduction
Welcome to the first lesson in our course on "Fundamentals of Text Data Manipulation." This lesson will introduce you to the essential task of reading text files in C#. Text files are a fundamental data source in programming, commonly used for storing data, configuration files, and logs. Being able to open and read files in C# is a foundational skill you'll often rely on when working with data. By the end of this lesson, you will be able to read the entire contents of a text file into a string using C#'s File.ReadAllText method, a crucial capability for various data manipulation tasks. Let's get started!
Working with File Paths
A file path is an address that indicates where a file is located in your system's storage. This path guides your program on where to find or save a file. There are two types of file paths commonly used:
-
Absolute Path: This is the complete path to a file, starting from the root directory. Here are examples across different operating systems:
- Linux:
/home/user/documents/input.txt - macOS:
/Users/user/documents/input.txt - Windows:
C:\\Users\\user\\documents\\input.txt(note the double backslashes for escaping)
- Linux:
-
Relative Path: This path is relative to the directory in which your application is currently executing. For example,
documents/input.txtassumes your executable is running from theuserdirectory in these examples.
Here's how you can specify a file path in C#:
Make sure your C# program and the text file are in the same directory if you use a relative path. Otherwise, consider using the absolute path to ensure that your program can locate your file.
Defining Relative Paths with Examples
When working with relative paths in C#, it's important to understand your directory's structure. Here are a few examples with file trees:
-
Example 1:
File Tree:
textRelative Path:
C# -
Example 2:
File Tree:
textRelative Path:
C#The
..indicates moving up to the parent directory. This approach works similarly across platforms like macOS/Linux and Windows. -
Example 3:
File Tree:
textRelative Path (assuming the program is in
program2):C#
These examples demonstrate how relative paths are determined by the program's current working directory.
