仅从一个特定行读取文件到另一个C ++

时间:2014-04-22 03:37:51

标签: c++ file line

有没有办法如何从文件中读取数据到另一行?

例如:

在文件中是这些行:

第1行:空行

第2行:空行

Line3:robert wa

Line4:frank le

Line5:silvia op

第6行:空行

第7行:空行

Line8:andy sf 。

我只需阅读从Line3到Line6的所有内容

因此输出将是:robert wa frank le silvia op

我的文件有300行我想要打印。

你知道怎么做,或者你可以给我贴一些伪代码

由于

3 个答案:

答案 0 :(得分:1)

使用std::getline从输入流中读取一行(例如ifstream)。然后,您只能打印您感兴趣的那些。

答案 1 :(得分:1)

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

 int main () {
  string line;
  ifstream myfile ("example.txt");
  if (myfile.is_open())
  {
    while ( getline (myfile,line) )
    {
      if(line.empty())
      {
        cout<<"Empty line";
      }
      else
      {
        //do some work
      }
    }
    myfile.close();
  }

  else cout << "Unable to open file"; 

  return 0;
}

答案 2 :(得分:1)

这应该可以解决问题:

#include <iostream>
#include <fstream>
#include <string>
using namespace std;

    int main()
    {
        string line;
        ifstream infile;
        infile.open("putyourinputfilehere.txt");
        while(getline(infile, line))
        {
            if(line != "")
            {
                cout << line << endl;
            }

        }
        infile.close();
        return 0;
    }