如何从文件itno标准字符串cpp中读取文本

时间:2018-02-23 21:19:58

标签: c++ readfile

我试图将文本文件中的2行读入c plus plus中的std :: string。我查看了几个答案,发现没有一个能在我的设备上运行。谁能告诉我我做错了什么?该方法当前返回一个空字符串,并没有正确打开该文件或完全读取它。

std::string readFile(std::string filename) {
  std::ifstream infile;
  infile.open(filename);
  std::string output;
  if (infile.is_open()) {
    while(infile.good()) {
      infile >> output;
    }
  }
  infile.close();
  return output;
}

1 个答案:

答案 0 :(得分:0)

不确定您要尝试打开哪个文件,但这是一个完全不同的问题。您编写的代码将打开一个文件,如果您为其提供可以打开的文件的路径。检查当前的工作目录并确认路径是否正确。

即使你解决了这个问题,你也会遇到更多问题。

我希望您感到困惑,因为您反复使用此行覆盖输出:

infile >> output;

也许您打算将输出声明为std::stringstream

对我来说,它没有返回一个空字符串,它返回文件的最后一个字。我想这取决于你文件中的内容。