[C++]Pobieranie danych z pliku oraz odnajdywanie liczb

Witam,

mam kilka pytań co do C++:

1. chcę pobrać dane z pliku linijka po linijce. Skorzystałem z tego przyładu:

std::fstream plik( "nazwa_pliku.txt", std::ios::in ); //zakładamy, że plik istnieje

char dane[255];

plik.getline( dane, 255 ); //wczytanie jednego wiersza danych (lub częśći wiersza jeśli sie nie zmieści)

ze strony http://cpp0x.pl/kursy/Kurs-C++/Obsluga-plikow/305Jednak dzięki temu mogę pobrać tylko linijkę tekstu z pliku. A co jak chcę przejść do następnej linijki? 2. Muszę z pobrane linijki wyodrębnić wszystkie liczby. O to pytałem się już tu: jak-stringu-oddzielic-liczby-tekstu-t450252.html jednak było to w javie. Dokładnie muszę pobrać z ciągu znaków wszystkie liczby nie znając ich długości ani ilości, typu:

  1. Ostatnie pytanie: mam znaki w zmiennej char. Jak sprawdzić czy to litera, liczba, znak specjalny? I czy można bez problemu porównywać char’y zawierające litery? Czy dopuszczalne jest coś takiego:

    if(zmiennazilterami[12] == ‘v’)

Z góry dziękuję

  1. Zastanów się nad użyciem http://www.cplusplus.com/reference/string/getline/ - wywołujesz ją wielokrotnie, po dotarciu do końca pliku z tego co kojarzę strumień w kontekście logicznym będzie zwracał false (nie jestem na 100% pewien).

  2. Tu możesz użyć operator>>(istream, string) aby pobierać poszczególne ciągi znaków, a każdy z nich traktować napisaną własnoręcznie funkcją, sprawdzającą czy dany string to to co uważasz za liczbę, czy nie. Ewentualnie możesz użyć operator>>(istream, double) - tu również stan strumienia powinien zostać zmieniony przy niepowodzeniu i na tej podstawie można by rozróżniać, czy wczytywanie się udało (acz dawno nie pisałem w C++, więc też do sprawdzenia)

  3. http://www.cplusplus.com/reference/clibrary/cctype/

Jeżeli chodzi o pobieranie danych z pliku tekstowego proponowałbym :

ifstream plik("test.txt");

string tekst, line;

while(getline(plik, line))

     tekst+= line + '\n';