| Autor |
Nachricht |
Florian G.
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
|
Florian G. Mitglied
11:57:18 21.10.2009 Titel: |
Hilfe bei Bankautomaten Projekt |
Zitieren |
Hallo,
Da es mein erster Post ist Stelle ich mich kurz vor.
Ich heisse Florian bin 18 Jahre alt und besuche zurzeit ein Berufskolleg für Informationstechnik.
Mein Abschlussprojekt wird ein Bankautomat sein, er sollte in etwa so funktionieren wie ein echter (von der Bentzeroberfläche).
Ich werde denke ich noch ein paar features wie "Überweissung and andere Benutzer" dazubauen.
So ich habe mir jetzt gedacht um das Verwalten der "Benutzer" einfacher zu machen für jeden Nutzer eine .txt datei zu erstellen, diesw wird nach der Kontonr. benannt.
z.B in meinem Test
0000.txt
dort würde dann folgendes drinstehen:
Passwort
Anrede
Vorname
Nachnahme
Kontostand
Somit würde ich mir das Verwalten von Benutzern sehr einfach gestalten.
Ich würde von euch nur gerne wissen wie man nach eingabe der Kontonr. nach so einer .txt dateii sucht
z.b Kontonr 0000 --> es wird nach 0000.txt gesucht --> geöffnet und jede Zeile in einer Variable gespeichert.
Wenn ich jede Zeile in einer Variable habe bekomme ich alles alleine hin.
Habe nur dort Probleme weil wir sowas in der Schule noch nicht behandelt haben, und in google finde ich auch nichts richtiges, entweder veralatet oder ich besitze die includes nicht, wobei wir bei der nächsten Frage wären.
Wo finde ich alle(oder die nützlichsten) #includes??
Zum Schluss hänge ich noch mein Quelltext an den ich mir mal eben so ausgedacht habe, muss noch paar Sachen verändern war aber nur ne schreibarbeit von 10min.
Ich bedanke mich schonmal für jede nützliche Info
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | #include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int i, pw, f=0, auswahl, konto=10000, minus;
cout<<"Wilkommen bei ihrem Kreditinstitut"<<endl;
do{
f=f+1;
cout<<"Kontonr. eingeben (4-stellig!): ";
cin>>i;
if ( i == 0000)
{
cout<<"Kontonummer korrekt!"<<endl;
cout<<"Passwort eingeben (4-stellig!): ";
cin>>pw;
if ( pw == 1337)
{
cout<<"Passwort korrekt!"<<endl;
cout<<endl;
cout<<endl;
cout<<"Um den Kontostand abzufragen druecken Sie bitte die 1!"<<endl;
cout<<"Um Geld abzuheben druecken Sie bitte die 2!"<<endl;
cin>>auswahl;
switch(auswahl)
{
case 1: cout << "Kontostand betraegt: "<< konto << endl;
break;
case 2:
cout<<"Wieviel wollen sie abheben? (Betrag darf " << konto<<" nicht Ueberschreiten!):"<<endl;
cin>>minus;
cout <<"Neuer kontostand: "<< konto-minus << endl;
break;
default: cout << "Es wurde eine falsche Zahl eingegeben." << endl;
}
}
else
{
cout<<"Passwort falsch!"<<endl;
}
}
else
{
cout<<"Nr falsch!"<<endl;
}
cout<<endl;
cout<<endl;
cout<<endl;
cout<<"____________________Ende der Schleife___________"<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
}while (f < 20);
fflush(stdin);
getchar();
return 0;
} | |
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | #include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int i, pw, f=0, auswahl, konto=10000, minus;
cout<<"Wilkommen bei ihrem Kreditinstitut"<<endl;
do{
f=f+1;
cout<<"Kontonr. eingeben (4-stellig!): ";
cin>>i;
if ( i == 0000)
{
cout<<"Kontonummer korrekt!"<<endl;
cout<<"Passwort eingeben (4-stellig!): ";
cin>>pw;
if ( pw == 1337)
{
cout<<"Passwort korrekt!"<<endl;
cout<<endl;
cout<<endl;
cout<<"Um den Kontostand abzufragen druecken Sie bitte die 1!"<<endl;
cout<<"Um Geld abzuheben druecken Sie bitte die 2!"<<endl;
cin>>auswahl;
switch(auswahl)
{
case 1: cout << "Kontostand betraegt: "<< konto << endl;
break;
case 2:
cout<<"Wieviel wollen sie abheben? (Betrag darf " << konto<<" nicht Ueberschreiten!):"<<endl;
cin>>minus;
cout <<"Neuer kontostand: "<< konto-minus << endl;
break;
default: cout << "Es wurde eine falsche Zahl eingegeben." << endl;
}
}
else
{
cout<<"Passwort falsch!"<<endl;
}
}
else
{
cout<<"Nr falsch!"<<endl;
}
cout<<endl;
cout<<endl;
cout<<endl;
cout<<"____________________Ende der Schleife___________"<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
}while (f < 20);
fflush(stdin);
getchar();
return 0;
} | |
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 | #include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int i, pw, f=0, auswahl, konto=10000, minus;
cout<<"Wilkommen bei ihrem Kreditinstitut"<<endl;
do{
f=f+1;
cout<<"Kontonr. eingeben (4-stellig!): ";
cin>>i;
if ( i == 0000)
{
cout<<"Kontonummer korrekt!"<<endl;
cout<<"Passwort eingeben (4-stellig!): ";
cin>>pw;
if ( pw == 1337)
{
cout<<"Passwort korrekt!"<<endl;
cout<<endl;
cout<<endl;
cout<<"Um den Kontostand abzufragen druecken Sie bitte die 1!"<<endl;
cout<<"Um Geld abzuheben druecken Sie bitte die 2!"<<endl;
cin>>auswahl;
switch(auswahl)
{
case 1: cout << "Kontostand betraegt: "<< konto << endl;
break;
case 2:
cout<<"Wieviel wollen sie abheben? (Betrag darf " << konto<<" nicht Ueberschreiten!):"<<endl;
cin>>minus;
cout <<"Neuer kontostand: "<< konto-minus << endl;
break;
default: cout << "Es wurde eine falsche Zahl eingegeben." << endl;
}
}
else
{
cout<<"Passwort falsch!"<<endl;
}
}
else
{
cout<<"Nr falsch!"<<endl;
}
cout<<endl;
cout<<endl;
cout<<endl;
cout<<"____________________Ende der Schleife___________"<<endl;
cout<<endl;
cout<<endl;
cout<<endl;
}while (f < 20);
fflush(stdin);
getchar();
return 0;
} | |
Vielen Dank schonmal im v****** für jede nützliche Info |
Zuletzt bearbeitet von Florian G. am 11:59:28 21.10.2009, insgesamt 3-mal bearbeitet |
|
 |
C++ Forumbot
Forumbot
Benutzerprofil
Anmeldungsdatum: 29.02.2004
Beiträge: 16155
|
C++ Forumbot Forumbot
12:32:30 21.10.2009 Titel: |
|
Zitieren |
|
 |
mad_martin
Mitglied
Benutzerprofil
Anmeldungsdatum: 02.02.2007
Beiträge: 788
|
mad_martin Mitglied
12:44:55 21.10.2009 Titel: |
|
Zitieren |
|
 |
_matze
Mitglied
Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 9592
|
_matze Mitglied
12:53:48 21.10.2009 Titel: |
|
Zitieren |
Wenn du zu einer Funktion wissen willst, welche header/libs nötig sind, dann musst du in der entsprechenden Doku nachsehen. Das leistet wohl jede Funktionsreferenz. Ich persönlich arbeite mit dem Visual Studio und nehme auch die MS-Hilfe (lokal bzw. msdn.com). Oder schau mal hierein: http://www.cppreference.com/wiki/
Aber bist du schon sicher, dass das Projekt so in Ordnung ist? Soweit ich mich erinnere, sollte ein Abschlussprojekt auch einen Nutzen für den Betrieb darstellen (so dass man z.B. auch den zu erwartenden Umsatz/Gewinn schätzen oder sogar genau beziffern kann). Nur so als Anmerkung; ist ja sicher ziemlich blöd, wenn das Projekt abgewiesen wird und man sich schnell irgendwas Neues überlegen muss. |
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
|
|
 |
Florian G.
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
|
Florian G. Mitglied
13:00:20 21.10.2009 Titel: |
|
Zitieren |
danke mad martin werde ich nachher gleich mal durchlesen
| _matze schrieb: |
Aber bist du schon sicher, dass das Projekt so in Ordnung ist? Soweit ich mich erinnere, sollte ein Abschlussprojekt auch einen Nutzen für den Betrieb darstellen (so dass man z.B. auch den zu erwartenden Umsatz/Gewinn schätzen oder sogar genau beziffern kann). Nur so als Anmerkung; ist ja sicher ziemlich blöd, wenn das Projekt abgewiesen wird und man sich schnell irgendwas Neues überlegen muss. |
Das ist ein Berufskolleg, ich hab also kein Betrieb.
Rein Schulisch ist neu gibt es erst seit ca. 3 Jahren.
Das Projekt wurde genehmigt.
Ich bin auch weiterhin für Vorschläge offen... |
|
|
|
 |
Florian G.
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
|
Florian G. Mitglied
14:17:34 21.10.2009 Titel: |
|
Zitieren |
Habe mir das jetzt mal durchgelesen, und ja von sowas hatten wir nichts in der Schule.
Immerhin ist es nur ein Fach von vielen.
Wir haben halt nicht behandelt wie man andere Daten die nicht im Programm eingegeben oder deklariert werden verwendet.
Könnte mir jmd vllt. einen kleinen Quelltext senden das ich mich mal in den Quelltext einarbeiten kann weil ich verstehe wirklich nicht viel von dem was mad martin mir geschickt hat.
Mir würde auch nur reichen wie man z.B die textdatei öffnet und dann z.B die erste Zeile in einer Variable speichert.
Mfg
Florian |
|
|
|
 |
wabbul
Unregistrierter
|
wabbul Unregistrierter
15:23:39 21.10.2009 Titel: |
|
Zitieren |
Da ich mich gestern ebenfalls mit dem öffnen, lesen und beschreiben von Dateien auseinandergesetzt habe, hier ein Lektüre-Tipp:
http://www.c-plusplus.de/forum/viewtopic-var-t-is-252481.html
Grundsätzlich öffnest du eine Datei mit file.open("xxx.xxx").
Du könntest also zum Beispiel etwas schreiben wie
| C/C++ Code: | if (Kntnr == '0000')
{
file.open(0000.txt)
} | |
| C/C++ Code: | if (Kntnr == '0000')
{
file.open(0000.txt)
} | |
| C/C++ Code: | if (Kntnr == '0000')
{
file.open(0000.txt)
} | |
|
|
|
|
 |
mad_martin
Mitglied
Benutzerprofil
Anmeldungsdatum: 02.02.2007
Beiträge: 788
|
mad_martin Mitglied
15:47:08 21.10.2009 Titel: |
|
Zitieren |
@Florian:
Ganz simples einlesen:
| C/C++ Code: | 1 2 3 4 5 6 7 8 9 10 | 1 2 3 4 5 6 7 8 9 10 | std::string buffer;
std::ifstream myFile;
myFile.open("00000.txt", std::ios::in); // Textdatei öffnen
while (std::getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen
..
..
// hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen
| |
| C/C++ Code: | 1 2 3 4 5 6 7 8 9 10 | std::string buffer;
std::ifstream myFile;
myFile.open("00000.txt", std::ios::in); // Textdatei öffnen
while (std::getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen
..
..
// hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen
| |
| C/C++ Code: | 1 2 3 4 5 6 7 8 9 10 | std::string buffer;
std::ifstream myFile;
myFile.open("00000.txt", std::ios::in); // Textdatei öffnen
while (std::getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen
..
..
// hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen
| |
|
|
|
|
 |
volkard
Moderator
Benutzerprofil
Anmeldungsdatum: 06.04.2000
Beiträge: 24349
|
volkard Moderator
16:04:51 21.10.2009 Titel: |
Re: Hilfe bei Bankautomaten Projekt |
Zitieren |
|
 |
Florian G.
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
|
Florian G. Mitglied
16:35:04 21.10.2009 Titel: |
|
Zitieren |
ok danke... habe ich das Jetzt richtig verstanden
Ich habe mich mal hingesetzt und so könnte ich dann jede einzelne Zeile in der Textdatei auf dem Bildschirm ausgeben oder?
Somit müsste ich doch:
- die File öffnen können die eingegeben wurde
-Jede Zeile wird einer VAriable zugeordnet
-und in der nachfolgenden geschweiften klammer {} kann ich etwas mit der variable machen
Habe ich das so richtig verstanden??
Danke shconmal an euch 2
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | cout<<"Kontonr. eingeben (4-stellig!): ";
cin>>nr; // eingabe der kntnr
std::string pw, anr, vor, nach, kntos; //deklarieren der strings?? is das so richtig
std::ifstream myFile;
myFile.open(nr".txt", std::ios::in); // Textdatei öffnen die man für nr eingibt, z.b nr=0000 geht das so?
while (std::getline(myFile, pw)) { // die aktuelle Zeile in den String "pw" einlesen und den Zeiger auf die nächste Zeile setzen
//Somit weisse ich dem ersten wert doch die Variable pw zu oder? und gebe sie als Test einfach mal aus, hab ich das so richtig verstanden?
cout<<"Ihr passwort: "<<pw<<endl;
}
while (std::getline(myFile, anr))
{
cout<<"Anrede: "<<anr<<endl;
}
while (std::getline(myFile, vor))
{
cout<<"Ihr Vorname: "<<vor<<endl;
}
while (std::getline(myFile, nach))
{
cout<<"Ihr Nachname: "<<nach<<endl;
}
while (std::getline(myFile, kntos))
{
cout<<"Ihr kontostand: "<<kntos<<endl;
}
myFile.close(); // und danach Datei schließen | |
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | cout<<"Kontonr. eingeben (4-stellig!): ";
cin>>nr; // eingabe der kntnr
std::string pw, anr, vor, nach, kntos; //deklarieren der strings?? is das so richtig
std::ifstream myFile;
myFile.open(nr".txt", std::ios::in); // Textdatei öffnen die man für nr eingibt, z.b nr=0000 geht das so?
while (std::getline(myFile, pw)) { // die aktuelle Zeile in den String "pw"einlesen und den Zeiger auf die nächste Zeile setzen
//Somit weisse ich dem ersten wert doch die Variable pw zu oder? und gebe sie als Test einfach mal aus, hab ich das so richtig verstanden?
cout<<"Ihr passwort: "<<pw<<endl;
}
while (std::getline(myFile, anr))
{
cout<<"Anrede: "<<anr<<endl;
}
while (std::getline(myFile, vor))
{
cout<<"Ihr Vorname: "<<vor<<endl;
}
while (std::getline(myFile, nach))
{
cout<<"Ihr Nachname: "<<nach<<endl;
}
while (std::getline(myFile, kntos))
{
cout<<"Ihr kontostand: "<<kntos<<endl;
}
myFile.close(); // und danach Datei schließen | |
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 | cout<<"Kontonr. eingeben (4-stellig!): ";
cin>>nr; // eingabe der kntnr
std::string pw, anr, vor, nach, kntos; //deklarieren der strings?? is das so richtig
std::ifstream myFile;
myFile.open(nr".txt", std::ios::in); // Textdatei öffnen die man für nr eingibt, z.b nr=0000 geht das so?
while (std::getline(myFile, pw)) { // die aktuelle Zeile in den String "pw" einlesen und den Zeiger auf die nächste Zeile setzen
//Somit weisse ich dem ersten wert doch die Variable pw zu oder? und gebe sie als Test einfach mal aus, hab ich das so richtig verstanden?
cout<<"Ihr passwort: "<<pw<<endl;
}
while (std::getline(myFile, anr))
{
cout<<"Anrede: "<<anr<<endl;
}
while (std::getline(myFile, vor))
{
cout<<"Ihr Vorname: "<<vor<<endl;
}
while (std::getline(myFile, nach))
{
cout<<"Ihr Nachname: "<<nach<<endl;
}
while (std::getline(myFile, kntos))
{
cout<<"Ihr kontostand: "<<kntos<<endl;
}
myFile.close(); // und danach Datei schließen | |
|
Zuletzt bearbeitet von Florian G. am 16:41:33 21.10.2009, insgesamt 1-mal bearbeitet |
|
 |
_matze
Mitglied
Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 9592
|
_matze Mitglied
16:35:53 21.10.2009 Titel: |
|
Zitieren |
| wabbul schrieb: |
| C/C++ Code: | if (Kntnr == '0000')
{
file.open(0000.txt)
} | |
| C/C++ Code: | if (Kntnr == '0000')
{
file.open(0000.txt)
} | |
| C/C++ Code: | if (Kntnr == '0000')
{
file.open(0000.txt)
} | |
|
Anführungszeichen könnten ihren Beitrag zur erfolgreichen Übersetzung leisten. Muss aber nicht, wenn du nicht willst...
Die einfach Anführungszeichen oben sind auch falsch. Ein Zeichenliteral ist nur ein Zeichen breit, alles darüber hinaus ist ein String und bedarf der doppelten Anführungszeichen... |
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
Zuletzt bearbeitet von _matze am 16:57:09 21.10.2009, insgesamt 1-mal bearbeitet |
|
 |
Th69
Mitglied
Benutzerprofil
Anmeldungsdatum: 25.03.2008
Beiträge: 2255
|
Th69 Mitglied
16:45:56 21.10.2009 Titel: |
|
Zitieren |
Florian G., überleg dir nochmal, was eine while-Schleife macht (eine if-Anweisung wäre in deinem Fall wohl sinnvoller). |
|
|
|
 |
wabbul
Unregistrierter
|
wabbul Unregistrierter
17:16:43 21.10.2009 Titel: |
|
Zitieren |
| _matze schrieb: |
Anführungszeichen könnten ihren Beitrag zur erfolgreichen Übersetzung leisten. Muss aber nicht, wenn du nicht willst... [...]
|
Asche auf mein Haupt. Danke für die Berichtigung.
Übrigens, um mal eine eigene Frage einzubringen wenn es erlaubt ist:
| C/C++ Code: | // Lese nun aus der Datei. Es wird getline verwendet um komfortabel eine ganze Zeile zu lesen. Zuerst muss aber der Dateipointer wieder auf den Anfang gesetzt werden:
file.seekg(0); | |
| C/C++ Code: | // Lese nun aus der Datei. Es wird getline verwendet um komfortabel eine ganze Zeile zu lesen. Zuerst muss aber der Dateipointer wieder auf den Anfang gesetzt werden:
file.seekg(0); | |
| C/C++ Code: | // Lese nun aus der Datei. Es wird getline verwendet um komfortabel eine ganze Zeile zu lesen. Zuerst muss aber der Dateipointer wieder auf den Anfang gesetzt werden:
file.seekg(0); | |
Was genau tut bitte die Funktion seekg(0)?
Ist diese dafür zuständig dass immer nur eine Zeile gelesen wird und nicht der gesamte Inhalt? |
|
|
|
 |
wabbul
Unregistrierter
|
wabbul Unregistrierter
17:28:19 21.10.2009 Titel: |
|
Zitieren |
Man entschuldige den doppel-Beitrag, ich werde mich gleich registrieren.
Gearde ahbe ich die Funktion seekg() getestet, die allem Anschein den Cursor auf die Stelle im Paramter verschiebt.
Welche Funktion ist also für einen Zeilensprung geeignet? |
|
|
|
 |
Florian G.
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
|
Florian G. Mitglied
08:14:36 22.10.2009 Titel: |
|
Zitieren |
Hallo, ich habe jezz mal deine Lösung probiert, und mit einem einfachen
versehen, jedoch kommen 6 Fehlermeldungen, ich glaube das mir includes fehlen oder sonstiges, kann mal jmd bitte drübersehen, hier ein screenshot.
http://img11.imageshack.us/img11/5254/unbenannthv.jpg |
|
|
|
 |
Mizar
Mitglied
Benutzerprofil
Anmeldungsdatum: 18.10.2008
Beiträge: 215
|
Mizar Mitglied
08:26:03 22.10.2009 Titel: |
|
Zitieren |
Es sollte noch folgendes eingebunden werden:
| C/C++ Code: | #include <fstream> // für std::ifstream
#include <string> // für std::string und std::getline | |
| C/C++ Code: | #include <fstream> // für std::ifstream
#include <string> // für std::string und std::getline | |
| C/C++ Code: | #include <fstream> // für std::ifstream
#include <string> // für std::string und std::getline | |
Und noch eine kleine Anmerkung: Entweder verwendest du
| C/C++ Code: | | using namespace std; | |
| C/C++ Code: | | using namespace std; | |
| C/C++ Code: | | using namespace std; | |
und entfernst dann die ganzen std:: oder aber (was ich persönlich besser finde) du schmeißt das
| C/C++ Code: | | using namespace std; | |
| C/C++ Code: | | using namespace std; | |
| C/C++ Code: | | using namespace std; | |
weg und verwendest dann konsequent std::. Also, zum Beispiel auch hier:
| C/C++ Code: | | cout<<buffer; // <-- vor cout dann das std:: schreiben | |
| C/C++ Code: | | cout<<buffer; // <-- vor cout dann das std:: schreiben | |
| C/C++ Code: | | cout<<buffer; // <-- vor cout dann das std:: schreiben | |
Es liegt ganz an dir |
_________________ "Pardon me for not knowing they had a... sonic weapon fence."
|
|
 |
Florian G.
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
|
Florian G. Mitglied
13:55:15 22.10.2009 Titel: |
|
Zitieren |
So Danke,
Ich habe deine Erklärungen befolgt.
Jedoch scheint es nicht ganz zu funktionieren, dort wo die .exe gespeichert wird habe ich eine 0000.txt erstellt.
Dort steht in der ersten Zeile TEST.
Jedoch wird dies nicht ausgegeben es erscheint nur ein leeres Dos Fenster.
Was mache ich den Falsch?
Danke für die schnellen Hilfen bis jetzt haben wir sehr geholfen!
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include <iostream>
#include <iomanip>
#include <fstream> // für std::ifstream
#include <string> // für std::string und std::getline
using namespace std;
int main()
{
string buffer;
ifstream myFile;
myFile.open("00000.txt");//, std::ios::in); // Textdatei öffnen
while (getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen
cout<<buffer;
// hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen
fflush(stdin);
getchar();
return 0;
} | |
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include <iostream>
#include <iomanip>
#include <fstream> // für std::ifstream
#include <string> // für std::string und std::getline
using namespace std;
int main()
{
string buffer;
ifstream myFile;
myFile.open("00000.txt");//, std::ios::in); // Textdatei öffnen
while (getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen
cout<<buffer;
// hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen
fflush(stdin);
getchar();
return 0;
} | |
| Code: | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | #include <iostream>
#include <iomanip>
#include <fstream> // für std::ifstream
#include <string> // für std::string und std::getline
using namespace std;
int main()
{
string buffer;
ifstream myFile;
myFile.open("00000.txt");//, std::ios::in); // Textdatei öffnen
while (getline(myFile, buffer)) { // die aktuelle Zeile in den String "buffer" einlesen und den Zeiger auf die nächste Zeile setzen
cout<<buffer;
// hier kannst du deine Operationen mit der aktuellen Zeile (in "buffer") durchführen, z.B. einen Wert auslesen (mit Stringoperationen) und in einer Variable speichern
}
myFile.close(); // und danach Datei schließen
fflush(stdin);
getchar();
return 0;
} | |
|
Zuletzt bearbeitet von Florian G. am 13:56:28 22.10.2009, insgesamt 1-mal bearbeitet |
|
 |
_matze
Mitglied
Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 9592
|
_matze Mitglied
14:00:52 22.10.2009 Titel: |
|
Zitieren |
| Florian G. schrieb: | dort wo die .exe gespeichert wird habe ich eine 0000.txt erstellt.
|
| Florian G. schrieb: |
| Code: | | myFile.open("00000.txt"); | |
| Code: | | myFile.open("00000.txt"); | |
| Code: | | myFile.open("00000.txt"); | |
|
Fällt dir was auf?
Wenn du nicht weißt, was bei einem Programm schief läuft, dann nutze den Debugger! Setze dir Breakpoints, gehe schrittweise durch das Programm, überprüfe Variableninhalte. Außerdem solltest du bei vielen Funktionen immer die Rückgabe checken. Du weißt z.B. gar nicht, ob die Datei wirklich geöffnet werden konnte. |
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
|
|
 |
Florian G.
Mitglied
Benutzerprofil
Anmeldungsdatum: 21.10.2009
Beiträge: 7
|
Florian G. Mitglied
14:49:38 22.10.2009 Titel: |
|
Zitieren |
JA mir fällt auf das ich ein kleines Dumemrchen bin =)))
Vielen dank für die Hilfe den Rest werde ich hinbekommen.
TY =) |
|
|
|
 |
_matze
Mitglied
Benutzerprofil
Anmeldungsdatum: 31.07.2007
Beiträge: 9592
|
_matze Mitglied
14:52:00 22.10.2009 Titel: |
|
Zitieren |
Zur Sicherheit nochmal eine kurze Anmerkung (falls nicht sowieso schon klar): bei ifstream::open immer checken, ob die Datei wirklich geöffnet werden konnte (ansonsten halt ne Fehlermeldung oder so). |
_________________ Wie viele atheistische Babys hat man schon aus Versehen - oder gar mit Absicht! - getauft?
|
|
 |