【发布时间】:2021-06-29 09:03:27
【问题描述】:
我正在从一个文本文件中读取以查找某行以我的条件开头的行索引。
事实证明,我想要的标准实际上有两个实例,我想获得第二个。
我将如何修改以下代码以跳过第一个实例并获取第二个实例?
var linesB = File.ReadAllLines(In_EmailBody);
int LineNumberB = 0;
string criteriaB = "T:";
for (LineNumberB = 0; LineNumberB < linesB.Length; LineNumberB++){
if(linesB[LineNumberB].StartsWith(criteriaB))
break;
}
我使用之后的结果并将其与另一个标准进行比较,以找出两个结果之间的行数。
【问题讨论】:
-
为什么不计算符合条件的出现次数?一旦计数超过某个值(在您的情况下为 2),就中断?
-
您应该使用 IndexOf(不是 StartsWith)。第二次出现可以通过使用 Substring(indexof + 1).IndexOf 找到,它是第二次出现的开始位置。第二次出现,您必须将第一个索引与第二个索引相加。
标签: c# indexing text-files file.readalllines line-count