Wie kann ich zeilenweise eine Textdatei in den Speicher einlesen?
-
1. bool nameGefunden==false;
2. Name eingeben (mit cin)
3. Datei öffnen (mit ifstream)
4. while-Schleife: solange die Datei nicht am Ende ist (datei.eof ()!=0) und nameGefunden==false
4.1. Zeile aus Datei auslesen (string zeile; datei>>zeile;)
4.2. Zeile auseinanderschnippeln, so daß Du ID, Anrede und Name als jeweils eigene Stringvariable hast
4.3. Wenn der eingegebene Name gleich der Name aus dem String ist:
4.3.1. Anrede ausgeben (bzw.: wenn Geschlecht gleich männlich, dann Ausgabe "Herr", ansonsten "Frau")
4.3.2. nameGefunden=true
5. datei.close ();Die Variante find ich ziemlich gut, aber da weiß ich auch nicht, wie ich anfangen soll, bzw, was ich mit den Angaben machen soll
, vorallem hab noch bis Freitag zeit 
-
Hier mal ein Ansatz, ich glaub dein Problem ist es die Codefetzen hier zu verstehen und in dein Programm einzuarbeiten:
#include <fstream> #include <iostream> int main() { std::ifstream in( "deine_datei.endung" ); if( !in ) { std::cout << "Konnte die Datei nicht öffnen!"; return 1; } int zeile; String geschlecht; String name; while( in >> zeile >> geschlecht >> name ) { std::cout << zeile << " " << geschlecht << " " << name << "\n"; } }Ich denke die Variablennamen sprechen für sich und wie man zwei Strings vergleicht weißt du ja, den Vergleich innerhalb der Einlese-While-Schleife bleibt dir also als Übung überlassen.
-
Hey vielen Dank, aber das check ich genauso wenig wie alles andere
,
langsam fass ich mir aufn Kopf lol