wie argument an ifstream.open() übergeben?
-
Die Operation open von ifstream verlangt einen konstanten char.
Hier mal meine bisherige Operation:AnsiString TDaten::Credits() { AnsiString alles; ifstream fin; string szLine = ""; string szWord = ""; string szName = ""; fin.open("credits.txt"); //Datei öffnen while(getline(fin, szLine)) //nimmt bei jedem Durchlauf eine Zeile aus { //der aufgerufenen Datei und hängt sie nach alles = alles + szLine.c_str() + "\n\r"; //AnsiString umgewandelt } //mit Zeilenumbruch an die Variable die return alles; //alles sammelt an. }
Ich möchte gerne die Datei aus der ich lesen will als Übergabeparameter übergeben - Mein Problem ist jetzt das .open einen konstanten char will, kann ich ja verstehen, weil man normal den Dateinamen voll reinschreibt.
Wie also Packe ich das am besten an?
-
ok, ein freundlicher user hat mir gerade weitergeholfen, hier meine neue operation:
AnsiString TDaten::Lesen(const char *vonwo) { AnsiString alles; ifstream fin; string szLine = ""; string szWord = ""; string szName = ""; fin.open(vonwo); //Datei öffnen while(getline(fin, szLine)) //nimmt bei jedem Durchlauf eine Zeile aus { //der aufgerufenen Datei und hängt sie nach alles = alles + szLine.c_str() + "\n\r"; //AnsiString umgewandelt } //mit Zeilenumbruch an die Variable die return alles; //alles sammelt an. }