2013-06-28 41 views
2

我有以下的IEnumerable:LINQ,不包括一些项目

var lines = File.ReadLines(this.FileToExtract); // IEnumerable<string> 

现在我要排除使用LINQ第3行,我该怎么办?谢谢。

回答

3

使用Skip

var linesTest = lines.Skip(3); 

采取一切,但最后:

var allButLast = linesTest.Take(linesTest.Count() - 1); 
+0

感谢,如何跳过最后一个项目? – Jahan

+0

@Jahan - 更新了我的答案。 –

+1

@Jahan请记住,这实际上读取文件两次,如果文件不是太大,最好实现enumerable(例如使用ToList)并使用IList而不是IEnumerable。 –

2
var lines = File.ReadLines(this.FileToExtract).Skip(3); 
+0

感谢在vc的答案 – Jahan

1

使用Skip

var lines = File.ReadLines(this.FileToExtract).Skip(3); 
+0

感谢Klause的回答 – Jahan