Witam. Mam napisać program który wyszuka w pliku tekstowym podany przez użytkownika znacznik html. Pierwszą rzeczą jest sprawdzenie czy taki znacznik w ogóle istnieje, wszystkie poprawne umieściłem w pliku "baza.txt".
Zależy mi na tej pierwszej części programu (sprawdzenie poprawności), Próbowałem to jakoś napisać różnymi metodami, ale nie działało do końca -tzn. podając z klawiatury np "c" wypisywało że znacznik jest prawidłowy, bo "c" występuje np. w ""...
I tutaj właśnie mam problem, poradzono mi aby skorzystać z funkcji strcmp().
Czy mógłby mi ktoś poprawić ten kod? Co bym nie wpisał to dostaje komunikat że znacznik jest błędny.
Plik baza.txt : http://www66.zippyshare.com/v/13456598/file.html
#include <string>
#include <iostream>
#include <fstream>
using namespace std;
int main()
{
string a, wiersz;
char znacznik[30];
char data[1000][1000];
bool flaga;
int znak =0;
ifstream baza;
baza.open("baza.txt");
if (baza.good()==true)
{
if (!baza.eof())
{
getline(baza, wiersz);
a=wiersz;
for(int k=0; k<=1000; k++) //WAŻNE ! ROZMIAR PLIKU ZE ZNACZNIKAMI HTML (Ilosc linii)
{
baza.getline(data[k], 30);
}
cout << "Podaj znacznik: ";
cin >> znacznik;
for ( int i=0; i<1000; i++ )
{
if(strcmp(data[i], znacznik)==0)
flaga=true;
else flaga=false;
}
}
}
if (flaga)
cout << "OK - TUTAJ BEDA DALSZE INSTRUKCJE" << endl; // TU BEDZIE DALSZA CZESC PROGRAMU!
else cout <<"WPROWADZONY ZNACZNIK JEST NIEPRAWIDLOWY!" << endl; // JAK JEST NIEPRAWIDLOWY TO ZAMKNIE
system ("Pause");
return 0;
}