如何读取文本文件并从C++的每一行中获取字符串?

所以;我试图创建一种hang子手游戏,我想从我从互联网上下载的.txt文件中获得大约4900个单词,每个单词放在不同的行中。我正在尝试读取文件,但程序每次都会出现错误(1),即没有找到文件。我尝试过使用绝对路径,并将文件放在工作目录中,并使用相对路径,但每次出现相同的错误。任何人都可以看看并告诉我这有什么问题吗? 我是C++的新手,我开始学习Java,现在我想尝试一些新的东西,所以我不确定代码的结构是否存在一些错误。 谢谢大家!如何读取文本文件并从C++的每一行中获取字符串?

#include "stdafx.h" 

#include <iostream>

#include <stdio.h>

#include <vector>

#include <fstream>

#include <string>

#include <algorithm>

using namespace std;

vector<string> GetWords(){

ifstream readLine;

string currentWord;

vector<string> wordList;

readLine.open("nounlist.txt");

while (getline(readLine, currentWord)) {

wordList.push_back(currentWord);

}

if (!readLine) {

cerr << "Unable to open text file";

exit(1);

}

return wordList;

}

回答:

您已阅读所有数据后检查了readLine。您可以使用下面的代码:

if (readLine.is_open()) { 

while (getline(readLine, currentWord)) {

wordList.push_back(currentWord);

}

readLine.close();

} else {

cerr << "Unable to open text file";

exit(1);

}

IS_OPEN功能是检查的readLine与任何文件关联。

回答:

使用此代码,

std::ifstream readLine("nounlist.txt", std::ifstream::in); 

if (readLine.good())

{

while (getline(readLine, currentWord))

{

wordList.push_back(currentWord);

}

}

以上是 如何读取文本文件并从C++的每一行中获取字符串? 的全部内容, 来源链接: utcz.com/qa/257345.html

回到顶部