Datei einlesen in Xcode
-
Hey, ich bin noch ganz neu in der Programmierung und wir müssen von unserem Prof aus eine .txt Datei einlesen. Der Code ist richtig und funktioniert auch (habe es auf windows getestet). Allerdings kann ich die .txt Datei nicht einlesen. Die Datei liegt in dem richtigen Ordner aber es funktioniert einfach nicht. Kann mir jemand sagen was ich falsch mache bzw was ich in die Konsole schrieben muss, damit er die .txt Datei lesen kann?
Der code ist folgender (ja er soll nur prüfen ob die Datei Gelsen wurde oder nicht)#include <iostream>
#include <fstream>
using namespace std;
int main()
{
char name [10000];
cout << "Wie ist der Name?" << endl;
cin >> name;
ifstream datei(name);
if (!datei)
{
cout << "fehler" << endl;
}
else cout << "passt" << endl;
return 0;
}Vielen Dank
-
Leserechte zu der Datei vorhanden? Nutzt du einen relativen Pfad und eventuell stimmt deine Annahme über das Arbeitsverzeichnis nicht?
Du verstehst bei den Fragen oben nur Bahnhof? Dann beschreibe genau, was du eingibst, was passiert, und was du erwartet hättest.
-
@jonathanxc Man sollte auch mal schauen, ob die Eingabe auch so im Programm ankommt - indem man diese nochmal ausgibt.
cout << "<" << name << ">" << endl;
Die < und > helfen mögliche Whitespace zu erkennen (wird hier aber nicht sein)
Dann kann man zum testen den Dateinamen noch fest im Programm codieren.
-
@jonathanxc sagte in Datei einlesen in Xcode:
Der code ist folgender (ja er soll nur prüfen ob die Datei Gelsen wurde oder nicht)
Dein Code versucht aber nur, die Datei zu öffnen - und gibt entsprechend eine Meldung aus. Gelesen wird aus ihr jedoch nicht. Damit kannst du also nicht testen, ob irgendwas gelesen wurde (denn es wird ja gar nichts gelesen).
-
@jonathanxc sagte in Datei einlesen in Xcode:
Die Datei liegt in dem richtigen Ordner aber es funktioniert einfach nicht.
Ich würde vermuten dass der Grund genau der ist, dass das eben nicht stimmt. Startest du das Programm aus einem Terminal? Oder startest du das Programm aus Xcode? Wo liegt die Textdatei? Und was ist das Working-Directory wenn du das Programm startest?
-
habe den das Problem beheben können, danke