【问题标题】:How to get the specific line from textfile containing a particular substring如何从包含特定子字符串的文本文件中获取特定行
【发布时间】:2014-06-04 09:40:20
【问题描述】:

我有一个包含文本的文本文件。现在我有一个字符串说945789。现在我想从文本文件中获取该字符串所在的行,但我无法搜索并获取该行.. 这是代码。

foreach (var line in File.ReadAllLines(pathToFile))
{
  //How to get the line with the string 
}

请帮帮我..

更新..

  for (int i = 9; i >=3; i--) {

  spsubcallingno = subcallingno.Substring(0, i);

   int lineNumber = 0;
   foreach (var spline in File.ReadAllLines(sp))
   {
   lineNumber++;
   if (line.Contains(spsubcallingno))
    {
   return lineNumber;
   }
   }
   }

我得到一个红线标记作为回报

【问题讨论】:

  • 除非你保留一个索引,否则你将无法知道行号,如果那是你想要的。您可以使用典型的 for 循环,“i”是行;对吗?

标签: c# string text-files


【解决方案1】:

只需使用int 来计算行数:

public int GetLineNumber(string pathToFile, string content)
{
    int lineNumber = 0;
    foreach (var line in File.ReadAllLines(pathToFile))
    {
         lineNumber++;
         if(line.Contains(content))
         {
             return lineNumber;
         }
    }
    return lineNumber;
}

其中pathToFile 是文本文件的路径,content 是要在行中查找的文本,例如945789.

【讨论】:

  • 我已经更新了我的帖子..请看..我在退货声明中遇到错误
  • 返回行假定此代码位于返回 int 的函数内部。如果不是,那么您可以将其更改为中断;或使用提供的更新答案。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-06-28
  • 1970-01-01
  • 1970-01-01
  • 2015-01-02
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多