Wątek przeniesiony 2020-04-30 21:53 z Java przez Shalom.

Wyszukiwanie słów kluczowych w pliku txt

0

Witam,
Chciałbym napisać program który będzie wyszukiwał wyszukiwał słów kluczowych w plikach txt. Poniżej moje próby sklecenia czegoś, niestety nie chce działać :(. Będę wdzięczny za nakierowanie mnie. Z góry dziękuję za pomoc.

#include <iostream>
#include <stdio.h>
#include <fstream>
 
using namespace std;
 
int liczbaPliku,liczbaWpisana,wynik;
fstream plik;
 
int main()
{
    plik.open("test.txt",ios::in);
    if(!plik.good())
    {
        cout << "!ERROR! Nie udalo sie wczytac pliku.";
        getchar();
 
        return 0;
 
string zawartosc;
 
string linia;
 
while(getline(plik, linia)) zawartosc += linia;
 
cout << "znaleziono" << endl << zawartosc;
 
zawartosc.find("szukany_text");
}
    plik << wynik;
    plik.close();
 
    return 0;
}
0

No ale skąd wiesz, że nie działa, skoto nie sprawdzasz rezultatu zwróconego przez metode find ?

0

czy ten kod w ogóle jest kompletny ? Bo nie widać końca klamry warunku if nie widać końca klamry funkcji main brak wywołania funkcji find

0
int lineNumber {0};
string line, searchText {"Some Text"};
while( getline(file,line) ) 
{ 
    ++lineNumber;
    if( line.find(searchText) != string::npos ) 
    {
        cout << "Founded :  " << searchText << " in line: " << lineNumber << endl;
    }
}
0

Nadal walczę z tematem wyszukiwanie określonych wyrazów w pliku txt. Problem w tym że kod się kompiluje, ale nie wyszukuje wyrazów w pliku txt, tylko wyświetla za każdym razem te które ma zadeklarowane do szukanie.
#include <iostream>
#include <string>
#include <fstream>
using namespace std;
int main () {

string substring;

cout<<"wyraz1t"<<endl;
cout<<"wyraz2"<<endl;
cout<<"wyraz3"<<endl;

cin>>substring;

ifstream file_text ("test.txt");

string x;

bool ans=false;

int line=1;

if (file_text.is_open())
{
while ( getline (file_text,x) )
{
if (x.find(substring, 0) != string::npos) {
{

      cout<<"substring is present at line "<<line<<endl;
      ans=true;
}

line++;
}
file_text.close(); 

}
}
else
cout << "Unable to open file";

if(!ans) // if subtring not present.
cout<<"subtring not present is present"<<endl;
return 0;
}

1 użytkowników online, w tym zalogowanych: 0, gości: 1