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

Wczytywanie informacji z pliku txt

Ostatnio zmodyfikowano 2019-09-01 18:40
Autor Wiadomość
Newcomer
Temat założony przez niniejszego użytkownika
Wczytywanie informacji z pliku txt
» 2019-09-01 15:11:31
Witam, stworzyłem program który ma za zadnie wczytywać dane ze stworzonego pliku txt. Problem w tym że kiedy wpiszę dane, wyjdę z programu i wejdę z powrotem kiedy wcisnę 2 program zostawia 3 linijki miejsca i wypisuje 0. Co zrobić aby wpisał imię, nazwisko i numer telefonu?
C/C++
#include <iostream>
#include <fstream>
#include <conio.h>
#include <windows.h>

using namespace std;
int nr_tel;
string imie, nazwisko;
char wybor;
int main()
{
    menu:
    cout << "-------------------------" << endl;
    cout << "|     Menu Wyboru       |" << endl;
    cout << "|1.Zapisz lub zmien dane|" << endl;
    cout << "|2.Wypisz dane          |" << endl;
    cout << "|3.Zakoncz program      |" << endl;
    cout << "-------------------------" << endl;
    wybor = getch();
    switch( wybor )
    {
        {
        case '1':
            system( "cls" );
            cout << "Podaj imie: "; cin >> imie;
            cout << "Podaj nazwisko: "; cin >> nazwisko;
            cout << "Podaj numer telefonu: "; cin >> nr_tel;
            fstream dane;
            dane.open( "wizytowka.txt", ios::out );
            dane << imie << endl;
            dane << nazwisko << endl;
            dane << nr_tel << endl;
            dane.close();
            goto menu;
        }
        break;
    case '2':
        {
            fstream dane;
            dane.open( "wizytowka.txt", ios::in );
            if( dane.good() == false )
            {
                cout << "Plik nie istnieje!";
                Sleep( 2000 );
                goto menu;
            }
            string linia;
            int nr_linii = 1;
            while( getline( dane, linia ) );
           
            {
                switch( nr_linii )
                {
                case 1: imie = linia; break;
                case 2: nazwisko = linia; break;
                case 3: nr_tel = atoi( linia.c_str() ); break;
                }
                nr_linii++;
            }
            dane.close();
            cout << imie << endl;
            cout << nazwisko << endl;
            cout << nr_tel << endl;
            getchar();
            goto menu;
        }
        break;
        {
        case '3':
            exit( 0 );
            break;
            default:
            cout << "Nie ma takiej opcji w menu!";
            Sleep( 2000 );
            system( "cls" );
            goto menu;
            break;
            return 0;
        }
    }
}
P-175153
pekfos
» 2019-09-01 18:40:40
C/C++
while( getline( dane, linia ) );

{
Średnik.
P-175154
« 1 »
  Strona 1 z 1