我可以获得一些指导来构建一个输入文件的解析器,我一直在寻找帮助几周,这个任务已经过期,我只想知道如何去做。
评论的代码是我尝试过的,但我感觉它比这更严重。我有一个文本文件,我想解析它来计算单词出现在文档中的次数。
Parser::Parser(string filename) {
//ifstream.open(filename);
// source (filename, fstream::in | fstream::out);
}
答案 0 :(得分:1)
答案 1 :(得分:0)
查看How do you read a word in from a file in C++?中的答案。最简单的方法是使用ifstream
和operator>>
来阅读单个单词。然后,您可以使用标准容器,例如vector
(如上面的链接中所述)或map<string, int>
来记住实际数量。
答案 2 :(得分:0)
读一个字:
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