öffnen und einlesen in struct
-
Mahlzeit...
Ich möchte eine datei einlesen die nach folgendem Muster aufgebaut ist:
Manfred Musterman
12234
55678
12234Den kram in der Datei will ich in einen struct haben:
struct datensatz
{
string szName;
bool bDispo;
float fGeld;
bool iTyp;
int iPin;
int iKontoNr;
};
struct datensatz data[100];Ich kenne den Code um das in C zu machen, aber dummerweise nicht den für C++..... HELP!
-
Darf ich hinzufügen das das dringend ist....??
AHHH!
-
Welches Objekt willst Du fürs schreiben verwenden ?
std::fstream ?
CFile ?
Du könntest z.B. operator<< und >> definieren für Deine Strukt
-
ich will fstream benutzen....
-
Hi
Wenn du MFC verwendest (wenn nicht, bist du im falschen Forum
)
nimm
- die Klasse CStdioFile, wenn die Datei im Textformat vorhanden ist.
- die Klasse CFile, wenn die Datei im Binärformat vorhanden ist.Grüße Rapha
ps.pyromane schrieb:
Ich kenne den Code um das in C zu machen, aber dummerweise nicht den für C++..... HELP!
Kannst auch den C Code verwenden

-
öhm äh
falsches......*hust*Ich programmiere das teil nich in MFC, also bin ich...äh...also...äh..im falschen....*gluck*
-
pyromane schrieb:
ich will fstream benutzen....
#include <iostream> #include <fstream> #include <string> struct datensatz { std::string szName; bool bDispo; float fGeld; bool iTyp; int iPin; int iKontoNr; }; std::ostream & operator<<(std::ostream & out,const datensatz & satz) { out<<satz.szName<<'\n'<<" "; out<< satz.bDispo<<" "; out<<satz.fGeld<<" "; out<<satz.iTyp<<" "; out<<satz.iPin<<" "; out<<satz.iKontoNr<<"\n"; return out; } std::istream & operator>>(std::istream & in,datensatz & satz) { std::getline(in,satz.szName); in>>satz.bDispo; in>>satz.fGeld; in>>satz.iTyp, in>>satz.iPin; in>>satz.iKontoNr; return in; } int main() { std::fstream file("t:\\test.txt",std::ios::out); if(!file) return 20; datensatz t; t.szName = "Test Test"; t.bDispo = 1; t.fGeld = 2; t.iKontoNr = 3; t.iPin = 4; t.iTyp = true; file<<t; file<<t; file.close(); file.open("t:\\test.txt",std::ios::in); file>>t; file>>t; }Als Einstieg.
Du kannst natürlich noch die Formatierung machen und std::vector verwenden.Links aus den FAQs
-
pyromane schrieb:
öhm äh
falsches......*hust*Ich programmiere das teil nich in MFC, also bin ich...äh...also...äh..im falschen....*gluck*
ausserdem... c ist eine untermenge von c++. falls du meinst den code in c bereits zu kennen, dann benutze diesen doch einfach weiter! denn die meisten c programme lassen sich auch mit einem c++ compiler übersetzen.
-
alex-t schrieb:
ausserdem... c ist eine untermenge von c++. falls du meinst den code in c bereits zu kennen, dann benutze diesen doch einfach weiter! denn die meisten c programme lassen sich auch mit einem c++ compiler übersetzen.
Genau, das meine ich auch

Grüßle Rapha