Wyszukiwanie pliku tekstowego C ++ dla określonego łańcucha i zwracanie numeru wiersza, w którym ten ciąg jest włączony
Czy w c ++ istnieje konkretna funkcja, która może zwrócić numer linii określonego ciągu, który chcę znaleźć?
ifstream fileInput;
int offset;
string line;
char* search = "a"; // test variable to search in file
// open file to search
fileInput.open(cfilename.c_str());
if(fileInput.is_open()) {
while(!fileInput.eof()) {
getline(fileInput, line);
if ((offset = line.find(search, 0)) != string::npos) {
cout << "found: " << search << endl;
}
}
fileInput.close();
}
else cout << "Unable to open file.";
Chcę dodać kilka kodów w:
cout << "found: " << search << endl;
Spowoduje to zwrócenie numeru wiersza, po którym następuje wyszukiwany ciąg.