Ifstream problem
-
Moin moin,
Ich habe folgendes Problem :
char* filein = ""; cout<<"dateiname: \n"; cin>>filein; ifstream in; in.open(filein,ifstream::in) ; // <- FehlerAn der Markierten Stelle springt direkt der debugger an aber den Fehler finde ich trotzdem nicht.
Das Erstellen der Datei funktioniert aber sobald ich einen Dateinamen eingebe schmiert das ganze ab.Vielen Dank schonmal

Gruß
Lusches
-
Dein char-Zeiger zeigt auf ein Stringliteral der Länge 1. Weder darfst du dorthin schreiben, noch wäre dort genug Platz. Benutz std::string.
-
Jetzt bekomme ich diesen Fehler:
Konvertierung des Parameters 1 von 'std::string' in 'const wchar_t *' nicht möglich
-
Das liegt daran das ifstream::open(const char * filename, ios_base::openmode mode = ios_base::in)] eine Adresse auf ein char-Array erwartet, das erhälst du durch die Memberfunktion string::c_str().
Also kurz und knapp:
in.open(filein.c_str(),ifstream::in) ;
-
Hier ein Beispiel wie ich sowas in der Regel mache:
ifstream ein ("eingang.txt", ios::in);funktioniert

Du kannst mal versuchen "eingang.txt" als string zu übergeben, spiel bissl damit rum.