![]() |
C++: fOpen -> Problem mit Dateiname
Hallo zusammen!
So langsam denke ich ich bin zu blöd für C++. Ich Will ne Datei mit fOpen auf machen, da muss ich ja so wie ich das jetz erforscht hab \ doppelt nehmen. Also beispielsweise "c:\\test.dat". Nun hol ich mir den Dateinamen mit nem Open-Dialog, der gibt nen String ohne doppelte \ zurück. Also dachte ich mir ich verdopple die einfach mit folgendem Codeschnipsel:
Delphi-Quellcode:
Pustekuchen, klappt net (Fehler beim Öffnen)!!!
char sString2[1024];
strcpy(sString2,ofn.lpstrFile);//Dateiname aus Opendialog in String kopieren int len, i, addx; addx = 0; len = strlen(sString2); for (i = 0; i < len; i++) { if (sString2[i]==92)//92 = "\" { sString[i+addx]=92; addx++; sString[i+addx]=92; } else sString[i+addx] = sString2[i]; } sString[i+addx]=0;//String abschließen Wenn ich allerdings den String net mit dem Open-Dialog einlese, sondern mit
Delphi-Quellcode:
zuweise, geht es mit einmal. WO ist der Unterschied??????
strcpy(sString,"c:\\test.dat");
Es kommt doch beide male der gleiche String raus, oder? Mach ich was mit den Zeichen Falsch? Besteht ein Unterschied zwischen 2 mal 92 und "\\"??? Danke schonmal fürs durchlesen :mrgreen: Gruß, Schubi |
Re: C++: fOpen -> Problem mit Dateiname
Den Backslash ("\") brauchst du nur dann, wenn du im Quellcode einen String direkt angibst. Und zwar idR für alle Sonderzeichen. Den String deines OpenDialogs kannst du 1:1 in fOpen verwenden.
Gruss, Fabian |
Re: C++: fOpen -> Problem mit Dateiname
also, ich hab nu probiert:
Den String aus dem Dialog nehme ich mit strcpy in sString rein, dann rufe ich fOpen auf, geht NICHT! Ändere ich allerdings den String mit
Delphi-Quellcode:
Dann geht es mit einmal!
strcpy(sString,"c:\\test.dat");
Aber warum geht es mit dem String aus dem Open-Dialog net? Woran kann es dann liegen, wenn nicht an den doppelten "\"? |
Re: C++: fOpen -> Problem mit Dateiname
Habs rausgefunden...
Einer von diesen Fehlern, die man net findet. :wall: :oops: Danke trotzdem! |
Alle Zeitangaben in WEZ +1. Es ist jetzt 21:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz