savetofile
-
Hallo liebe Community,
wir haben in der Berufsschule eine Projekt-arbeit aufbekommen, in der wir eine Bootsverwaltungs programm in c++ schreiben solln.
Hier mal mein Code, bis ich gekommen bin.
Ich will in der Funktion Neubuchung(); den Namen des Kunden und die Bootsnummer oder Farben einlesen. Diese daten solln dann in eine extra Funktion Namens safetofile() im .txt Format gespeichert werden. Die Funktion Statisktik soll dann Zeilenweise in .txt wieder einlesen und dann in einem Array ausgeben.Ist das möglich, wenn ja wie mach ich das? Also hab mich auch schon teilweise eingelesen in fsteam, aber irgendwie fehlt mir da der Schlüssel zur tür.
Wäre super wenn ihr mir tipps geben könntet,
danke im voraus.
#include <iostream> #include <cstdlib> #include "func.h" #include <fstream> using namespace std; //Globale Variablen char(pause); void exit() { cout << "\nPress any key to continue " <<endl; cin.ignore(); cin.get(pause); system("cls"); } void menue() //Main Menü Function { system("cls"); int choice; // Begin des Hauptmenü do { // Header(); //Aufruf der Header Funktion ja, aber lieber so header(); cout << " \n\n\nSie befinden sich im Hauptmenue der Bootsverwaltung\n"; cout << " ===============================================\n"; cout << " 1. Buchungsmenue\n"; cout << " 2. Bootemenue\n"; cout << " 3. Statistikmenue\n"; cout << " 4. Exit\n"; cout << "\nIhre Wahl: "; do { choice=cin.get(); } while (choice < '1' || choice > '4'); switch (choice) { case '1' :buchung(); break; case '2' :boote(); break; case '3' :statistik(); break; case '4' :exit(); break; default :cout <<"falsche Eingabe";break; } } while (choice !=4); } void header() //Header Menü { //wenn das hier unten ausgegeben werden soll, dann muss aber überall ein cout davor cout<<"\t\t\t========================"; cout<<"\n\t\t\t*** Bootsverwaltung ***\n"; cout<<"\t\t\t========================"; } //Die Funktionen müssen auch definiert werden, wenn sie schon aufgerufen werden. void buchung() { system("cls"); int choice; //Buchungsmenue do { header(); cout<<"\n\nBuchungsmenue\n"; cout<<"=============\n\n"; cout<<"1. Neue Buchung\n"; cout<<"2. Zurueck ins Hauptmenue\n"; cout << "\n\nIhre Wahl: "; do { choice=cin.get(); } while (choice < '1' || choice > '2'); switch (choice) { case '1' :neubuchung();break; case '2' :menue();break; default :break; } } while (choice != '1'); exit(); cout<<"Buchung"; } void statistik() { int boot[10]; int i; system("cls"); header(); cout<<"\n\n\tStatistik\n"; cout << "\tStandort Berlin : \n"; for(i=0;i<10;i=i+1) { boot[i]=i; cout << boot[i] <<"\n"; } /*for(i=0;i<10;i=i+1) { cout<<boot[i]<<"\n"; }*/ cin.get(); } void boote() { system("cls"); header(); cout<<"Boote"; } void neubuchung() { char boot[20]; system("cls"); header(); cout<<"\nBuchungsmenue\n"; cout<<"===============\n"; cout<<"Bitte Name eingeben: "; boot[20]=cin.get(); } /*void savetofile() { fstream fout("boote.dta" , ios::app); fout.write(); fout.close(); fstream fout2("data.dta" , ios::app); fout2.write(); fout2.close(); }*/
-
such mal nach fstream,istream,ostream. Da wirst du alles finden was du brauchst.
am besten du guckst hier:
http://www.cplusplus.com/reference/
-
void neubuchung() { cout << "Name : "; // Der Name soll in die test1.txt gespeichert werden cin >> name; /* fstream f; f.open("test.txt", ios::out); f << "Dieser Text geht in die Datei" << endl; f.close();*/Ich kann zwar wie oben in eine datei über f<< reinsschreiben. Wie schaff ich es denn von einer Variablen, den Wert z.b. der Name einer Variablen in eine Textdatei zu speichern und diese auf einen Array wieder auszulesen.
Stichwort Pointer....wäre nett wenn mir einer ein kleines Beispiel dazu schreiben könnte!mfg Shrek
-
Indem DU definierst, was wo gespeichert wird. Und entsprechend liest du es dann wieder aus.
-
//lesen std::string lesen_aus_datei; ifstream f("test.txt"); int i =0; while(f>>lesen_aus_datei) { i+=i; } cout<<"Es befinden sich "<<i<<" Woerter in der Datei"<<endl;
-
Naja paar Fehler, @Firefighter. so ist es richtig:
#include <fstream> #include <string> using namespace std; ... ifstream readFile("Text.txt"); string read; int numWords = 0; while(readFile >> read) ++numWords; cout << "Es befinden sich " << numWords << " Woerter in der Datei" << endl;
-
ok gut ich habe die datei vergessen das ist natürlich schwerwiegend sonst ließt er ins datennirvana
Danke für die Verbesserung.(Das kommt davon wenn mal immer als erster gleich antworten will
):DEDIT:Werde es umeditieren
-
hi,
danke erstmal für die Hilfe...ich sass heute den ganzen scheiss Vormittag dran und hab mir den kopf darüber zerbrochen. Leider bin ich auch der einzige, der bei der Project arbeit wirklich zeit investiert, obwohl ich nicht gerade der beste in C++ bin.
Zu dem Quellcode,
wäre es jetzt noch möglich, dass ich das File auswerte, quasi was in dem File drin steht, weil jetzt zeigt er mir ja nur an, wieviel drin steht.Danke im vorraus,
MfG Shrek
-
naklar du liest es doch in einen String ein, und den kannst du dann auswerten/bearbeiten