📅  最后修改于: 2023-12-03 14:39:45.100000             🧑  作者: Mango
在C#编程中,我们有时需要从文件流中读取所有行。这在文本处理和日志记录等场景中很常见。在本文中,我们将介绍如何使用C#实现此功能。
我们可以使用C#提供的StreamReader类轻松地从文件流中读取所有行。以下是一个示例代码片段:
using System.IO;
string filePath = @"C:\example.txt";
using (StreamReader sr = new StreamReader(filePath))
{
string line;
while ((line = sr.ReadLine()) != null)
{
Console.WriteLine(line);
}
}
在此代码片段中,我们打开一个指向'example.txt'文件的StreamReader对象,然后使用ReadLine()方法从文件流中读取每一行。如果文件已经读取完,ReadLine()方法将返回null,因而循环也将结束。
另一种读取文件流的方法是使用C#的内置函数File.ReadAllLines。以下是一个示例代码片段:
using System.IO;
string filePath = @"C:\example.txt";
string[] lines = File.ReadAllLines(filePath);
foreach(string line in lines)
{
Console.WriteLine(line);
}
在此代码片段中,我们使用File.ReadAllLines函数一次性地将文件中的所有行读取到string[]数组中。然后我们可以遍历数组并打印每一行。
以上两种方法都可以实现从文件流中读取所有行的功能,但是使用StreamReader读取文件流可以在处理大文件时节省内存。当文件较小时,我们也可以使用File.ReadAllLines读取文件流,这样代码更加简洁。