stream prob.
-
hi
std::ifstream read("bild.txt"); std::string zeile; int count = 0; while(true) { if(zeile.find("bla") != std::string::npos) { std::cout << "Gefunden." << std::endl; ++count; } }datei bild existiert, habs auch geprüft sogar mit if()´klappt aber noch immer nicht. ich glaub dass "ZEILE' net hochgezählet wird.
es kommt kein "Gefunden" raus
bitte helft mirdnake
-
Vielleicht solltest du die Datei nicht nur öffnen, sondern auch einlesen (Stichwort: getline()).
-
CStoll schrieb:
(Stichwort: getline()).
Na sowas aber auch. Habs vergesset 
aber habe noch eine frage : wie kann ich mit dem find suchen? wie gehts bei leerzeichen?
-
kann mir jmd helfe bitte?
-
std::ifstream file("bild.txt"); std::string row; while(std::getline(file, row)) { if(row.find("bla") != -1) std::cout << "\"bla\" gefunden" << std::endl; if(row.find(" ") != -1) std::cout << "Leerzeichen gefunden" << std::endl; } file.close();MfG
-
Wie sieht das Format von der Datei 'bild.txt' aus?
Falls 'bla' ein Wort ist, lässt sich das leicht durch Einlesen von strings bewerkstelligen. Etwa so:
std::ifstream read("bild.txt"); for( std::string wort; read >> wort; ) { if( wort == "bla" ) { std::cout << "Gefunden." << std::endl; ++count; } }Bzw. sogar so:
std::ifstream read("bild.txt"); int count = std::count( std::istream_iterator< std::string >( read ), std::istream_iterator< std::string >(), std::string( "bla" ) );:xmas2: Werner