我一直在尝试使用c++从.txt中读取,但没有任何输出



我需要帮助从。txt文件上的c++阅读。我编写的代码应该接受命令行参数,其中一个是文件名,读取文件,将其内容存储在字符串中,并将该字符串的内容打印为输出。我使用的是Ubuntu WSL 2终端。每当我运行代码时,它都会使用参数接收命令并打开文件,但不会打印任何内容。我不知道该怎么办。

#include <bits/stdc++.h>
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
int main(int argc, char** argv){
string filename = argv[1];
cout << filename << endl; 
string myText;
ifstream myReadFile;

myReadFile.open(filename);

while(getline (myReadFile, myText)){
cout << myText; 
}
cout << "Why is my code not doing what it is meant to?" << endl;
myReadFile.close();
return 0;
}

这是文件中应该使用cout打印出来的内容。

The man in the mirror does not exist. 

从流中读取行的惯用方法是:

ifstream filein(filename);
for (string line; getline(filein, line); ) 
{
cout << line << endl;
}

指出:

  1. close()。当你习惯地使用c++时,c++会为你负责资源管理。

  2. 使用空闲的getline,不使用流成员函数

相关内容

  • 没有找到相关文章

最新更新