003
02.02.2009, 14:27 Uhr
0xdeadbeef
Gott (Operator)
|
In der RFC 959 ist zwar nicht explizit ein Verzeichnistrenner festgeschrieben, in der Praxis hat sich aber / eingebürgert, wie es in POSIX festgeschrieben ist (daran halten sich, seit MacOS X erschienen ist, nahezu alle Systeme außer Windows). Du musst davon ausgehen, dass nicht jeder FTP-Server hier mit Backslashes etwas anzufangen weiß; besser wäre dementsprechend
C++: |
BOOL bWorking = finder.FindFile(_T("server/ordner/ordner/bu.txt"));
|
und analog
C++: |
BOOL bGot = connection_pointer->GetFile(_T("ordner/ordner/ordner/bu.txt"),_T("C:\\ordner\\TxtTransfer"));
|
Was die Warnungen angeht, \ ist in String- und Zeichenkonstanten ein Escape-Zeichen, das bedeutet, er verleiht dem dahinter stehenden Zeichen neue Bedeutung. \n ist zum Beispiel ein Zeilenumbruch, \t ein Tabulator etc. Weil das so ist, muss, wenn \ selbst in einem String auftauchen soll, klargestellt werden, dass die übliche Funktion als Escape-Zeichen nicht gelten soll; deshalb muss an dieser Stelle \ als \\ geschrieben werden. Die Konvention stammt wohl ursprünglich von C (oder einer seiner Vorgängersprachen), hat sich aber...naja, eigentlich so gut wie überall etabliert. Die einzigen Ausnahmen, die mir gerade einfallen, sind Visual Basic und die Windows-Konsole.
Siehe dazu auch http://de.wikipedia.org/wiki/Escape-Sequenz -- Einfachheit ist Voraussetzung für Zuverlässigkeit. -- Edsger Wybe Dijkstra |