var lines = file.ReadAlllines("C:\fileToSearch.txt") .Where(x => !x.EndsWith("999999999999"));
并像这样循环
foreach (var line in lines){ if (lineCounter == 1) { outputResults.Add(oData.ToCanadianFormatfileheader()); } else if (lineCounter == 2) { outputResults.Add(oData.ToCanadianFormatBatchheader()); } else { oData.FromUslineFormat(line); outputResults.Add(oData.ToCanadianlineFormat()); } lineCounter = lineCounter + 1; textBuilder += (line + "<br>");}
类似于我访问前两行我想分别访问最后一行和倒数第二行
解决方法 在这里,您可以再次利用liNQ:var numberOflinesToTake = 2;var lastTwolines = lines .Skip(Math.Max(0,lines.Count() - numberOflinesToTake)) .Take(numberOflinesToTake);var secondTolastline = lastTwolines.First();var lastline = lastTwolines.Last();
或者,如果您想单独检索它们:
var lastline = lines.Last();var secondTolastline = lines.Skip(Math.Max(0,lines.Count() - 2)).Take(1).First();
我将.First()添加到最后,因为.Take(1)将返回一个包含一个项目的数组,然后我们用First()获取.这可能是优化的.
同样,您可能希望熟悉liNQ,因为它有时可以节省时间.
总结以上是内存溢出为你收集整理的c# – 获取文本文件中的最后两行全部内容,希望文章能够帮你解决c# – 获取文本文件中的最后两行所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)