C# 用 StreamReader 读几行?

C# Read several lines with StreamReader?

我是 C# 新手,遇到了问题。我想将文件的内容写入 RichTextBox,但 StreamReader.ReadLine 方法只读取第一行。

我该如何解决这个问题?

可能最简单的方法是使用 System.IO.File class 的 ReadAllText 方法:

myRichTextBox.Text = File.ReadAllText(filePath);

这个 class 有一堆静态方法为您包装 StreamReader class 使读写文件变得非常容易。

有多种读取文件的方法。如果你想用 StreamReader 读取整个文件,这可能是一个解决方案:

using System;
using System.IO;

class Test 
{
    public static void Main() 
    {
        try 
        {
            // Create an instance of StreamReader to read from a file.
            // The using statement also closes the StreamReader.
            using (StreamReader sr = new StreamReader("TestFile.txt")) 
            {
                string line;
                // Read and display lines from the file until the end of 
                // the file is reached.
                while ((line = sr.ReadLine()) != null) 
                {
                    Console.WriteLine(line);
                }
            }
        }
        catch (Exception e) 
        {
            // Let the user know what went wrong.
            Console.WriteLine("The file could not be read:");
            Console.WriteLine(e.Message);
        }
    }
}

您可以编辑控制台输出的部分。在这里可以将 RichTextbox 的字符串与

连接起来
text += Environment.NewLine + line;