Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Lekcja 32 Zadanie domowe

Ostatnio zmodyfikowano 2014-07-05 23:09
Autor Wiadomość
Haryen
Temat założony przez niniejszego użytkownika
Lekcja 32 Zadanie domowe
» 2014-07-05 22:24:28
Cześć! Wykonałem zadanie domowe z lekcji 32, jednak mam problem:
C/C++
//Napisz program, który odczyta zawartość pliku, a następnie wypisze na ekranie tylko te wiersze, w których znajduje się wyraz wprowadzony przez użytkownika.
#include <fstream>
#include <iostream>
#include <string>

int main()
{
    std::ifstream plik( "cpp0x.txt" );
    std::string wiersz, fraza;
   
    if( plik.good() )
    {
        while( std::getline( plik, wiersz ) )
             std::cout << wiersz << std::endl;
       
        std::cout << "Podaj wyraz, ktorego mam szukac: ";
        std::cin >> fraza;
       
        while( std::getline( plik, wiersz ) )
        {
            if( wiersz.find( fraza ) != std::string::npos )
                 std::cout << wiersz << std::endl;
            else
            std::cout << "Nie odnaleziono frazy! << std::endl;     
        } //while
    } //if
    else
         std::cout << "Nie udalo sie otworzyc pliku!" << std::endl;
   
    plik.close();
    return 0;
}

Program wypisuje zawartość pliku, jednak nie pokazuje znalezionej frazy. Dlaczego?
P-113347
SeaMonster131
» 2014-07-05 22:28:44
Po wypisaniu całego pliku, kursor w pliku znajduje się na jego końcu. Przesuń go na początek, lub zamknij plik i ponownie go otwórz.
P-113348
Haryen
Temat założony przez niniejszego użytkownika
» 2014-07-05 22:35:19
Możesz powiedzieć o co chodzi z kursorem (w sensie jak go przesunąć)? :P
P-113350
pekfos
» 2014-07-05 22:43:51
seekg()..
P-113352
Haryen
Temat założony przez niniejszego użytkownika
» 2014-07-05 23:09:20
Tego jeszcze nie umiem, dopiero za 3 lekcje. :D Ale oba sposoby działają. Dzięki za pomoc.
P-113357
« 1 »
  Strona 1 z 1