我对ifstream如何运作有点不清楚。我已经搜索过,但无法找到这个问题的具体答案。
我要做的是停在一个单词上,然后在那之后用这个词做点什么。
具体来说,我的程序会查看包含单词的文件。每次看到字符串" NEWWORD"它需要用" NEWWORD"
之后的单词做一些事情string str;
ifstream file;
file.open("wordFile.txt");
while(file >> str){
//Look through the file
if(str == "NEWWORD"){
//Do something with the word following NEWWORD
}
}
file.close;
如何告诉ifstream转到下一个单词?
P.S:如果我在指导方针和规则方面做错了,我很抱歉。这是我第一次发帖。答案 0 :(得分:1)
每次使用>>
从流中提取时,它会自动前进到下一个项目(这就是while
循环在文件中前进的方式,直到找到" NEWWORD"你可以在看到" NEWWORD":
string str;
ifstream file;
file.open("wordFile.txt");
while(file >> str){
//Look through the file
if(str == "NEWWORD"){
//Do something with the word following NEWWORD
if (file >> str) {
// the word following NEWWORD is now in str
}
}
}
file.close;
答案 1 :(得分:0)
为了澄清matt的答案,在istream上使用>>
会找到下一个不是空格的字符,然后读取它找到的所有字符,直到它到达空格字符或文件末尾。