.txt Datei einlesen und anzeigen

Imod

Mitglied
Hey,

Ich programier gerade an meinem Adressbuch,

Bis jetzt kann ich die Daten eingeben und die Werden dann alle nacheinander abgespeichert.

Aber jetzt muss ich die Datei wieder einlesen, und dann anzeigen.

Ich wollte das so machen aber er bringt einen Fehler:

PHP:
if ( menu == 2)
  {
  fp = fopen("add.txt", "r") //lesen 
  {
  gets(cText);   //liest string bis zum zeilenende
  cout << cText;
  while(!(feof(fp)))   // bis datei zu ende ist
  {
    gets(cText);   //liest string bis zum zeilenende
    cout << cText;
  }  
  }

Der fehler ist in der Zeile " p = fopen("add.txt", "r") "


Ich hab das Adressbuch für einen Kumpel geschrieben besser gesagt mit ihm gewettet das ich es bis heute abend schaff aber ich komm hier nicht weiter :confused:

:google: wollte mir auch nicht wirklich helfen ^^

MFg Domi


thx im vorraus

P.s

Ich benutze : Dev C++
Windows xp
Ich hoffe das reicht braucht ihr mehr schirebt einfach


Dazu hab ich in meinem Programm diese #include :

#include <iostream.h>
#include <fstream>
#include <windows.h>
#include <shellapi.h>
#include <stdlib.h>
#include <string.h>
 
Zuletzt bearbeitet:
Mit C++ kenn ich mich nicht so gut aus,
aber ich würde sagen, du hast ein Simikolon vergessen :D

edit: sry, die { überlesen :(
 
Mit C++ kenn ich mich nicht so gut aus,
aber ich würde sagen, du hast ein Simikolon vergessen :D

edit: sry, die { überlesen :(

fp = fopen("add.txt","r");

mit Simikolon hat er den gleichen fehler gebracht
ich hab noch das vor den code hinzugefügt:

PHP:
FILE* fp;

aber hat nichts gebracht :(

wäre glücklich um weitere ratschläge
 
jup

PHP:
  fp = fopen("add.txt", "r"); //<- Da fehlte das Semikolon

Noch was: Da sind 3 geschweifte Klammern auf aber nur 2 zu. Ist das nur ungünstig abgeschnitten?
 
char phone[20];
char name[20];
char name2[20];
char myname[10];
char cText[250];
int web;
int menu;

PHP:
cout <<"\n";
  if ( menu == 2)
  {
  fp = fopen("add.txt", "r"); //lesen 
  {
  gets(cText);   //liest string bis zum zeilenende
  cout << cText;
  while(!(feof(fp)))   // bis datei zu ende ist
  {
    gets(cText);   //liest string bis zum zeilenende
    cout << cText;
  }  
  }
  }          
  cout <<"\n";


Das gehört jetzt alles noch dazu,

habs mal so gemacht wie du geschrieben hast mir dem Simikol aber hat nichts gebracht
 
so hab das Problem kann es nicht erklärn aber iwi kommt jetzt keine Fehlermeldung merh ^^

dafür bringt er aber trotzdem keinen text raus ^^
 
PHP:
cout <<"\n";
  if ( menu == 2)
  {
  FILE* fp;
  fp = fopen("add.txt", "r"); //lesen
  { 
  gets(cText);   //liest string bis zum zeilenende
  cout << cText;
  while(!(feof(fp)))   // bis datei zu ende ist
  {
    gets(cText);   //liest string bis zum zeilenende
    cout << cText ;
  }
  }    
  }          
  cout <<"\n";

Dev c++ bringt keinen Fehler aber beim Wählen des menupunkts 2 also anzeigen des Adresbuches zeigt er nichts an obwohl in der .txt namen drin stehn die ich davor über die console reingeschireben habe.

so sieht sie aus:

Vorname :
Dominik
Nachname :
Amann
Telefonnummer:
07524/3104

Vorname :
David
Nachname :
Wichert
Telefonnummer:
07524/2244

Vorname :
Dominik
Nachname :
Amann
Telefonnummer:
07524/3104
 
sorry dass ich nochmal schireb hab den code nochmal editiert mit einer else kausel.
Dec C++ bringt keinen Fehler aber durch die else kausel ahb ich erfaren das er die "add.txt" nicht öffnen kann.

Hier der neue code:

PHP:
cout <<"\n";
  if ( menu == 2)
  {
  FILE* fp;
  if (fp = fopen("add.txt", "r")) //lesen
  { 
  gets(cText);   //liest string bis zum zeilenende
  cout << cText;
  while(!(feof(fp)))   // bis datei zu ende ist
  {
    gets(cText);   //liest string bis zum zeilenende
    cout << cText ;
  }
  }
  else
  {
  cout << "\n";  
  cout << "\n";  
  cout << " can not open file !! \n";
  cout << "\n";
  }      
  }
  cout << "\n";
 
Zurück