我在While循环中逐行读取文本文件。当我到达特定的行时,我想跳过当前和接下来的3次迭代。
我想我可以使用计数器之类的东西做到这一点。但是我想知道是否还有更优雅的方法?
using (var sr = new StreamReader(source))
{
string line;
while ((line = sr.ReadLine()) != null)
{
if (line == "Section 1-1")
{
// skip the next 3 iterations (lines)
}
}
}
最佳答案
有一个for
循环执行sr.ReadLine
3次并丢弃结果,例如:
using (var sr = new StreamReader(source))
{
string line;
while ((line = sr.ReadLine()) != null)
{
if (line == "Section 1-1")
{
for (int i = 0; i < 3; i++)
{
sr.ReadLine();
}
}
}
}
您应检查
sr.ReadLine
返回null
或流是否已结束。关于c# - 如何在while循环中跳过多个迭代,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25691538/