C# 文件的输入与输出
在 C# 中读取文件的最基本方法是使用 System.IO 命名空间中的 StreamReader 类。StreamReader 类提供了一个方便的方法,用于从文件中读取字符流。以下是一份示例代码:
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string path = @"C:\example.txt";
// 创建一个 StreamReader 的实例来读取文件
StreamReader reader = new StreamReader(path);
// 读取文件的全部内容
string contents = reader.ReadToEnd();
// 关闭文件
reader.Close();
// 输出读取到的内容
Console.WriteLine(contents);
}
}
在这个示例中,我们首先创建了一个字符串变量来存储文件路径。然后,我们创建了一个 StreamReader 实例,并将其用于读取文件的全部内容。最后,我们关闭了文件,并将读取到的内容输出到控制台上。
# 文件输出
在 C# 中写入文件的最基本方法是使用 System.IO 命名空间中的 StreamWriter 类。StreamWriter 类提供了一个方便的方法,用于向文件中写入字符流。以下是一份示例代码:
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string path = @"C:\example.txt";
// 创建一个 StreamWriter 的实例来写入文件
StreamWriter writer = new StreamWriter(path);
// 写入一些内容到文件中
writer.WriteLine("Hello, world!");
// 关闭文件
writer.Close();
}
}
在这个示例中,我们首先创建了一个字符串变量来存储文件路径。然后,我们创建了一个 StreamWriter 实例,并将其用于向文件中写入一些内容。最后,我们关闭了文件。
# 处理文件输入和输出
除了读取和写入文件之外,我们还可以在 C# 中处理文件输入和输出。一个常见的用例是按行读取文件并对每一行执行一些操作,然后将结果写入到另一个文件中。以下是一份示例代码:
using System;
using System.IO;
class Program
{
static void Main(string[] args)
{
string inputPath = @"C:\input.txt";
string outputPath = @"C:\output.txt";
// 创建一个 StreamReader 的实例来读取文件
StreamReader reader = new StreamReader(inputPath);
// 创建一个 StreamWriter 的实例来写入文件
StreamWriter writer = new StreamWriter(outputPath);
// 读取文件的每一行并处理
string line;
while ((line = reader.ReadLine()) != null)
{
// 在这里处理每一行,例如计算行数、单词数等等
int lineLength = line.Length;
// 将处理结果写入到输出文件中
writer.WriteLine($"Length of line: {lineLength}");
}
// 关闭文件
reader.Close();
writer.Close();
}
}
在这个示例中,我们首先创建了两个字符串变量来存储输入和输出文件的路径。然后,我们创建了一个 StreamReader 实例,用于读取输入文件,以及一个 StreamWriter 实例,用于写入输出文件。接下来,我们使用一个 while 循环来读取输入文件的每一行,并对每一行执行一些操作。在这个示例中,我们只是计算了每一行的长度,并将结果写入到输出文件中。
最后,我们关闭了输入和输出文件,并结束了程序的执行。
需要注意的是,在实际的开发中,我们通常需要使用 try-catch 块来捕获可能会抛出异常的文件操作。同时,我们也需要注意在处理文件输入和输出时可能会遇到的一些其他问题,例如编码问题、换行符问题等等。
总之,C# 提供了丰富的文件操作功能,我们可以使用它们来读取、写入和处理文件。在实际的开发中,我们需要根据具体的需求来选择合适的文件操作方式,并注意处理可能出现的异常和问题。