hallo …schon wieder !
folgendes Problem. ich habe ein Programm geschrieben, was ein Art „Bank“ sein soll, d.h. der User trägt sich ein gibt ein paar daten an (Anrede, vor- und nachname, Kontonummer, PIN) diese Daten werden dann in eine datei geschrieben die genauso heißt wie der User mit nachnamen, also einfach „müller“ sie hat also keine dateiendung so will ich verhindern das selbst unerfahrene nutzer ihr konto zu leicht manipulieren können ;D.
das schreiben Funktionier wunderbar, aber beim auslesen haperts noch gewaltig.
in der Datei die ausgegeben wird steh folgendes
note: die erklärungen dahinter stehen natürlich nicht in der datei die habe ich jetzt nachträglich hinzugefügt um zu verdeutlichen was später zu welcher variable werden soll
Herr //char[5] Anrede
Hans //char[20] vname
Müller //char[20] nname
123456123456 //long long echte\_kontonummer
1234 //int echte\_pin
50 //int Guthaben
diese methode fragt also nun den nachnamen (char[20] nname) ab und sucht nach einer Datei die so heißt.
dann öffnet sie die datei und geht sie zeile für zeile durch. wenn sie an einer bestimmten zeile angelangt is, ließt sie die zeile mit getline() aus und soll sie dann entweder über strcpy(), bei Anrede vname und nname oder über atoi bzw atol in die richitge variable
bringen.
allerdings ist die ausgabe der konsole hier mehr als merkwürdig.
Bild: http://img824.imageshack.us/img824/9559/unbenanntzipz.png
hier ist die methode
void Kunde::laden(){
string inhalt\_anrede, inhalt\_vname, inhalt\_nname, inhalt\_knummer, inhalt\_pin, inhalt\_guthaben;
int anrede, vorname, nachname, knummer, pin, guthaben;
system("cls");
cout \> nname;
user1.open(nname, ios::in);
if(!user1.is\_open()){
cout
und hier die klasse
class Kunde{
private:
char Anrede[5];
char vname[20];
char nname[20];
long long echte\_kontonummer;
int echte\_pin;
int Guthaben;
fstream user;
ifstream user1;
public:
void einpflegen();
void login();
void einzahlen();
void speichern();
void laden();
void zeige\_guthaben();
};
hoffe ihr könnt mir weiterhelfen, ich drehe hier solangsam echt am rad.