Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » C++: datei.open...namen in einer Variablen??

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 < [ 2 ]
000
09.05.2003, 17:51 Uhr
~Fraenky
Gast


Hallo,
ich hab nen Probem:
Kann ich den Namen der Datei, welche geöffnet werden soll in einer Variablen speichern?? Bei mir gehts nicht, habs schon ausprobiert:


C++:
datei.open("datei.txt", ios::out); // Das geht


Aber:


C++:
char cdatei="datei.txt";
datei.open(cdatei, ios::out);  // geht nicht!


Kann ich dann auch zB den Dateinamen in der Variable mit ner User Eingabe verbinden??


C++:
cout << " Datei Namen eingeben: ";
cin >> cdatei;
datei.open(cdatei, ios::out);



THX!!

MfG
Fraenky
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
09.05.2003, 18:35 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


Hallo, dein Fehler liegt hier:


C++:
char cdatei="datei.txt";



cdatei wäre so nur 1(!) Zeichen lang, was du brauchst ist folgendes:


C++:
char cdatei[b][][/b] = "datei.txt";


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
09.05.2003, 19:29 Uhr
~Fraenky
Gast


Error E2449 netsendbat.cpp 14: Size of 'cdatei' is unknown or zero in function main()
Error E2449 netsendbat.cpp 14: Size of 'cdatei' is unknown or zero in function main()
Error E2277 netsendbat.cpp 49: Lvalue required in function main()


diese fehler kommen dann...

wenn ich die datei als string mach??


C++:
string strdatei;
cout << " Datei Namen eingeben: ";
cin >> strdatei;
datei.open(strdatei, ios::out);


Der Code geht jedenfalls nicht..
wie mach ich das denn nu??
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
09.05.2003, 21:56 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


mach mal folgendes:


C++:
char cdatei[256]; // Platz für 255 Buchstaben + Terminierung
cout << " Datei Namen eingeben: ";
cin >> cdatei;
datei.open(cdatei, ios::out);


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
10.05.2003, 17:37 Uhr
~Fraenky
Gast


shit geht schon wieder nich..

Error E2277 netsendbat.cpp 47: Lvalue required in function main()

Bsp in cDatei steht text.txt

char cdatei[256];
cdatei="text.txt";
datei.open(cdatei, ios::out);

Wieso geht das denn nicht *verzweifel*
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
10.05.2003, 18:36 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


da musst du die funktion strcpy benutzen:


C++:
char cdatei[256];
strcpy(cdatei,"text.txt");
datei.open(cdatei, ios::out);


--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
10.05.2003, 18:53 Uhr
~Fraenky
Gast


hm...wieso kann die strcpy() Funktion keine string Dateien kopieren??


C++:
string empfaenger;
string mg;
string strdateiname;
strcpy(cdatei, strdateiname);

strdateiname=empfaenger+mg;
cout << strdateiname; // PC11mg.txt
strcpy(cdatei, strdateiname);


es kommt immer diese Fehlermeldung..

Dieser Post wurde am 10.05.2003 um 19:11 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
10.05.2003, 19:13 Uhr
FloSoft
Medialer Over-Flow
(Administrator)


bei strings musst du folgendes machen:


C++:
string strdateiname;
strcpy(cdatei, strdateiname.c_str());



Aber mal ne Frage, warum mischt du string und char?!? nimm halt für cdatei auch string!
--
class God : public ChuckNorris { };
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
10.05.2003, 20:39 Uhr
~Fraenky
Gast


hab ich ja schon versucht:


C++:
string strdateiname;
strdateiname=empfaenger+mg; //beides string Variablen
datei.open(strdateiname, ios::out);



das geht halt nicht..

Das eben ging..


C++:
strdateiname=empfaenger+mg;
strcpy(cdatei, strdateiname.c_str());
datei.open(cdatei, ios::out);


kann man das denn vielleicht noch vereinfachen?? Weil das ist ja dann eine Umweg so über char zu string..

Trotzdem schon mal Danke für deinen hilfe!!!!

MfG
Fraenky
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
10.05.2003, 20:44 Uhr
FloSoft
Medialer Over-Flow
(Administrator)



C++:
string strdateiname;
strdateiname=empfaenger+mg;
datei.open(strdateiname[b].c_str()[/b], ios::out);


--
class God : public ChuckNorris { };

Dieser Post wurde am 10.05.2003 um 21:20 Uhr von FloSoft editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: