如何在文本文件的中间插入行?

kar*_*uha 2 c# file-io

我有一个文本文件,我需要在遇到特定行后添加一些行.

我尝试制作流对象,然后从文件中读取,直到我获得搜索文本,然后通过设置其光标位置写入相同的流,但它不起作用.

有没有办法做到这一点?

vla*_*lad 5

以下是如何在文件中间附加一些文本:

var sb = new StringBuilder();
using (var sr = new StreamReader("inputFileName"))
{
    string line;
    do
    {
        line = sr.ReadLine();
        sb.AppendLine(line);
    } while (!line.Contains("<Sim Properties>"));

    sb.Append(myText);
    sb.Append(sr.ReadToEnd());
}

using (var sr = new StreamWriter("outputFileName"))
{
    sr.Write(sb.ToString());
}
Run Code Online (Sandbox Code Playgroud)

这将插入包含的行myText 之后<Sim Properties>.