Я понял, как искать и читать слова из текстового файла. Я также понимаю, как вы можете использовать getline(), чтобы пройти через текст и прочитать определенную строку.C++ Чтение слов и строк в одном цикле чтения
Но теперь я пытаюсь выяснить, как использовать оба в том же «цикле чтения».
Было бы что-то вроде этого:
string S1="mysearchword01",S2="mysearchword02";
char word[50];
while(myfile.good()){ //while didn't reach the end line
file>>word; //go to next word
if (word==S1){ //if i find S1 I cout the two next words
file>>a>>b;
cout<<a<<" "<<b<<endl;}
}
else if (word==S2) {
//****here I want to cout or save the full line*****
}
}
Так я могу использовать GetLine там каким-то образом?
Заранее спасибо.
'while (myfile.good())' Это неправильно. Он вернет true в пустой файл. Чтобы прочитать строку, используйте 'string line; while (getline (myfile, line)) {..} ' –
while (myfile.good()) работает для меня. Если я использую этот код без «else if», он просматривает мой текстовый файл слово за словом для S1. Если он найдет, что он вызывает два следующих слова. Затем цикл while останавливается, когда он попадает в конец файла. – remi000
Слово должно быть символом, а не строкой, будет редактировать. – remi000