通过c#读取特定字符串后的行

时间:2014-02-16 07:23:56

标签: c# string

如何在达到特定字符串

后读取特定字符串和结束读取后的行

这是我的文本文件

bla bla bla
bla bla bla 
bla bla vasdasdasd
<rs:data>
please read me se
please read me gr
please read me ew
please read me se
please read me cg
</rs:data>
saddsagkobn
bla bla bla

如果我使用此代码

string[] lines = System.IO.File.ReadAllLines(@"C:\temp\mytext.txt");

它将读取所有行

如何读取<rs:data></rs:data>之间的行?

1 个答案:

答案 0 :(得分:11)

您可以使用LINQ:

var result = lines.SkipWhile(x => x != "<rs:data>")  // skips everything before 
                  .Skip(1)                           // and <rs:data> itself
                  .TakeWhile(x => x != "</rs:data>") // and take up to </rs:data>
                  .ToList();                         // as List<string>