Cuncello Temat założony przez niniejszego użytkownika |
Zapis i odczyt z pliku. » 2014-08-20 16:01:11 Witam, czy ma ktoś pomysł na utworzenie programu, który utworzy plik z hasłami, rozpoczynającymi i kończącymi się na tą samą literę?
tzn. tworzymy plik.txt wpisujemy tam zwykłe hasła, oraz hasła zaczynające i kończące się na tą samą literę i żeby program utworzył nam drugi plik , w którym są tylko hasła kończące się i zaczynające na tą samą literę.
Tworzenie, zapisanie, odczyt umiem, ale odpowiedniej funkcji zrobić, która zrobi tak, że wybierze odpowiednie hasła to nie umiem : / |
|
1aam2am1 |
» 2014-08-20 16:10:21 wczytuj hasła do string. std::string str = "blebleb"; if( str.first() == str.back() )
|
|
Cuncello Temat założony przez niniejszego użytkownika |
» 2014-08-20 16:15:09 Hm... Ja mam różne hasła, problem w tym jak zrobić by odczytał pierwszą i ostatnią cyfrę np: zaczynające się na "a" i kończące. a każde hasło jest całkowicie inne. NP:
asdsda affffa asdsda dsfdfs asdasd dsfdfs dsfsdf
i z tych haseł program musi wybrać zaczynające się na "a" i kończące. |
|
pekfos |
» 2014-08-20 16:53:31 Otrzymałeś na to odpowiedź. if( passwd.front() == passwd.back() )
|
|
1aam2am1 |
» 2014-08-20 17:00:44 std::fstream plik; std::string temp = "";
plik.open( , std::fstream::in | std::fstream::binary );
if( !plik.good() ) { plik.close(); std::cout << "Failed to load " << "\"" << gdzie << "\"" << " Reason : Unable to open file" << '\n'; return 0; }
getline( plik, temp, '\n' ); while( !plik.eof() ) { if( temp.front() == temp.back() ) { std::cout << temp << std::endl; } getline( plik, temp, '\n' ); }
plik.close();
getline(plik, temp, '\n'); Oznacza wczytanie z strumienia "plik" do strumienia "temp" do znaku '\n' Innymi słowy czyta linie Unix(czyli zakończoną znakiem \n). |
|
Cuncello Temat założony przez niniejszego użytkownika |
» 2014-08-20 17:45:38 Wyjaśnij proszę co oznacza ta linijka :
getline( plik, temp, '\n' ); |
|
Monika90 |
» 2014-08-20 18:19:21 @1aam2am1 Tryb binarny to nie jest dobry pomysł. getline( plik, temp, '\n' ); while( !plik.eof() ) { if( temp.front() == temp.back() ) { std::cout << temp << std::endl; } getline( plik, temp, '\n' ); }
|
A co się stanie jak linia będze pusta? A co jak ostatnia linia w pliku nie będzie się kończyła znakiem '\n'? |
|
1aam2am1 |
» 2014-08-20 19:07:03 Tryb binarny jest dobry gdy nie chcemy aby system interpretował inaczej znak końca linii (Unix \n, Windows \r\n, Os x \r). Wczyta tylko strumień do końca gdy nie będzie nigdzie \n. |
|
« 1 » |