Kamil9132 Temat założony przez niniejszego użytkownika |
[Allegro] Wyświetlanie tekstu z pliku i liczenie ilości linii w tym pliku » 2011-11-11 20:10:15 Witam W jaki sposób mogę wyświetlić tekst z pliku i zliczyć ilość linii w tym pliku? Próbowałem w ten sposób std::fstream plik; plik.open( "bazy/users.txt", std::ios::in | std::ios::out char dane[ 255 ]; textprintf_ex( pamiec, font, 200, 20, makecol( 255, 255, 128 ), - 1, "wdol: %d", plik.getline( dane, 255 ) );
Ale po skompilowaniu program się wyłącza i pojawia się błąd: "Program gra.exe przestał działać." Plik users.txt otwiera się (później jest sprawdzenie). Dlaczego pojawia się ten błąd i jak zliczyć ilość linii w pliku users.txt ? |
|
SeaMonster131 |
» 2011-11-11 21:59:58 Hm.. ja bym to zrobił tak, że wczytywał w pętli dopóki jeszcze coś jest zapisane w tym pliku, i wczytywał każdą linię do napotkania znaku "\n" czyli nowej lini, i jak ten znak będzie to wtedy ilosc_lini++; Może zadziałać ;p |
|
DejaVu |
» 2011-11-11 22:01:05 Błąd występuje ponieważ nie potrafisz prawidłowo korzystać z textprintf_ex. Zliczanie liczby linii w pliku wiąże się z jego całym przeczytaniem i liczeniem wystąpień znaku \n. |
|
Kamil9132 Temat założony przez niniejszego użytkownika |
» 2011-11-11 22:42:20 A mógłbyś dać przykład jak korzystać z tego prawidłowo? |
|
DejaVu |
» 2011-11-11 23:43:13 Analogicznie jak z funkcji printf |
|
Kamil9132 Temat założony przez niniejszego użytkownika |
» 2011-11-12 00:26:23 Czyli według tego takie coś powinno działać: textprintf_ex( pamiec, font, 200, 20, makecol( 255, 255, 128 ), - 1, "wdol: %s, %s\n", plik.getline( dane, 255 ) ); A nie działa, w pliku users.txt znajduje się tylko napis "Kamil9132". |
|
DejaVu |
» 2011-11-12 00:35:09 Przeczytaj jeszcze jak działa ten getline :) |
|
Kamil9132 Temat założony przez niniejszego użytkownika |
» 2011-11-12 11:16:13 Wielkie dzięki za pomoc :) A mógłbyś mi jeszcze pomóc w jescze jednym? Chodzi o to jak wybrać konkretną linię z tego pliku. |
|
« 1 » 2 3 4 |