我可以得到一些指导来构建一个输入文件的解析器,我已经找了几个星期的帮助,作业已经过去了,我只是想知道如何做到这一点。
注释的代码是我尝试过的,但我有一种感觉,它比那更严重。我有一个文本文件,我想对它进行解析,以计算单词在文档中出现的次数。
Parser::Parser(string filename) {
//ifstream.open(filename);
// source (filename, fstream::in | fstream::out);
}
我有一种感觉,你什么都没试过。所以我也要这么做注释的代码是我尝试过的,但我有一种感觉它比那更严重。
谷歌是你的朋友。
阅读单词:
std::ifstream file("FileName");
std::string word;
file >> word; // reads one word from a file.
// Testing a word:
if (word == "Floccinaucinihilipilification")
{
++count;
}
// Count multiple words
std::map<std::string, int> count;
// read a word
++count[word];
// To read many words from a file:
std::string word;
while(file >> word)
{
// You have now read a word from a file
}
注意:这是一个真实的词:-)
http://dictionary.reference.com/browse/floccinaucinihilipilification
看看如何在c++中从文件中读取单词?. 最简单的方法是使用ifstream
和operator>>
来读取单个单词。然后,您可以使用vector
(如上面的链接所述)或map<string, int>
这样的标准容器来记住实际的计数。