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

[C++] Wczytywanie mapy z pliku - niechciane znaki

Ostatnio zmodyfikowano 2011-01-26 09:21
Autor Wiadomość
tompibed
Temat założony przez niniejszego użytkownika
[C++] Wczytywanie mapy z pliku - niechciane znaki
» 2011-01-25 17:43:40
Mam taki kod do wyświetlania:

C/C++
void interfejs::wyswietl()
{
    int n = 0, c = 0;
    char p;
   
    ifstream plik;
    plik.open( "pom.pom" );
   
    if( !plik )
    {
        rest( 200 );
        allegro_message( "blad danych" );
    }
    else
    {
        while( plik.good() )
        {
           
           
            p = plik.get();
            n += 10;
            if( p == '\n' )
            {
                c += 10;
                n = 0;
            }
            textprintf_ex( screen, font, 535 + n, 350 + c, makecol( 255, 0, 255 ), - 1, "%c", p );
           
        }
        plik.close();
    }
   
}

i mam problem, jak zrobić aby wczytany plik nie posiadał znaczków powstałych z ENTER,
wczytany plik wygląda tak, a chciałbym aby nie wczytywało mi   "^"

 covxcvcxvxcvcx
^cosvxvxcvxcvxc
^pliczxcvxcvxcvx
^plikvxcvxcvxc
^^
Proszę o pomoc :)
P-27038
dmx81
» 2011-01-25 18:35:03
koniecznie chcesz pobierac po jednym znaku? nie lepiej bedzie do stringa ladowac przez getline()? funkcja ta nie zapisze ci znaku nowej linii (ale jesli chcesz aby linie byly oddzielone rowniez w stringu, musisz sam dopisac
C/C++
while( getline( plik, napis ) )

     napis += "\n";


mniej wiecej cos takiego

PS zauwazylem, ze liczysz tez wystapienia znakow i dodajesz cos - to samo mozesz pozniej po petli ktora napisalem - przeleciec string napis wyszukujac tych znakow i dodajac te swoje int'y
P-27039
DejaVu
» 2011-01-25 18:35:15
Za wiele z allegro to Twój problem nie ma. Wywal znaki z łańcucha znaków, które są równe '\r'.
P-27040
tompibed
Temat założony przez niniejszego użytkownika
» 2011-01-26 09:21:11
dzięki, zrobiłem wczytywanie po lini
P-27094
« 1 »
  Strona 1 z 1