Daten aus Datei auslesen und ausgeben?



  • Hab hier folgendes Programm:

    # include <iostream>
    # include <fstream>
    using namespace std; 
    
    class schueler 
    { 
    public: 
        char vname[20]; 
        char name[25]; 
        int alter; 
    }; 
    
    int anzahl,i, auswahl; 
    schueler datbank[20]; 
    
    void main (void) 
    
    {
    	ofstream datei("datei.txt", ios_base::app);
    	do
    	{
    		cout << "----------------------- Schueler - DB ----------------------------------- \n"; 
    		cout << "-------------------------------------------------------------------------\n\n"; 
    		cout << "--------------------------- Menue ---------------------------------------\n";
    		cout << "(1) Datensatz eingeben\n";
    		cout << "(2) Datensatz ausgeben\n";
    		cout << "(3) Beenden\n";
    		cin >> auswahl;
    		system ("cls");
    
    		switch (auswahl)
    		{
    			case 1:
    			cout << "Bitte geben Sie die Anzahl der Datensätze ein, die Sie eingeben moechten: "; 
    			cin >> anzahl; 
    			system ("cls");
    			for (i=0;i<anzahl;i++) 
    		    { 
    				cout << "Eingabe des " <<i+1<<". Datensatz:\n";
    				cout << "Wie lautet der Vorname?\n"; 
    				cin >> datbank[i].vname;
    				datei << datbank[i].vname << endl;
    				cout << "Wie lautet der Nachname?\n";
    				cin >> datbank[i].name;
    				datei << datbank[i].name << endl;
    				cout << "Wie lautet das Alter?\n";
    				cin >> datbank[i].alter;
    				datei << datbank[i].alter << endl;
    				system ("cls");
    			}break; 
    			case 2:
    			/*for (i=0;i<anzahl;i++)
    			{
    				cout << datbank[i].vname<<endl;
    				cout << datbank[i].name<<endl;
    				cout << datbank[i].alter<<endl;
    			}
    			system ("pause");
    			system ("cls");*/
    			do
    			{
    
    			}
    			while (!datei.eof());
    			break;
    		}
    
    	}
    	while(auswahl!=3);
    	datei.close();
    
    }
    

    Meine Frage kann ich die Case-Alternative Punkt 2 so realisieren, dass mir alle eingegebenen Daten aus der Datei datei.txt wieder ausgegeben werden?

    Bräuchte dringend mal die Hilfe 🙂



  • ich würd dir zu nem anderen ablauf raten

    ->programmstart
    ->datensätze werden von datei eingelesen
    ->user kann datensätze hinzufügen/editieren/löschen
    ->datensätze werden in die datein geschreiben
    ->programmende



  • ja, aba im normalfall kannst du sie so ausgeben und direkt drauf zugreifen, weils ja public is



  • schau auchmal in die c++-faq, punkt "ströme".



  • Hmm...kann mir nicht jemand mal ein Stück Quelltext hierzu posten?

    Wäre sehr nett.......


Anmelden zum Antworten