Kann nicht öffnen fstream sind bei der Angabe eines absoluten Pfades

Ich weiß, das ist eher lachhaft, aber ich kann nicht scheinen, um einfache C++ ofstream-code zu arbeiten. Können Sie mir bitte sagen, was könnte falsch sein mit dem folgenden code:

    #include <fstream>

    ...

    ofstream File("C:\temp.txt");

    if(File)
       File << "lolwtf";

Öffnen ofstream fehl, wenn ich einen absoluten Pfad angeben. Relative Pfade scheint zu funktionieren ohne Probleme. Ich bin wirklich unsicher, was das Problem hier ist.

Oh, anscheinend 'C:\' wird nicht akzeptiert als ein Gültiger Pfad. Dies ist ziemlich unglücklich, als ich bin versucht, zu schreiben, um einen Pfad angegeben, der durch die TEMP-Umgebungsvariable. Irgendwelche Vorschläge?
Es ist in std::, wenn es das ist was du meinst. Sie müssen uns wissen zu lassen, was meinen Sie mit "es funktioniert nicht". Kompilieren Fehler? Run-time Fehler? Falsche Ausgabe?
Entschuldigung. Das Hauptproblem ist, dass es sich weigert, die Datei zu öffnen, wenn ich geben Sie einen absoluten Pfad inklusive Laufwerksbuchstaben. Ursprüngliche Frage wird in Kürze aktualisiert.
Wie andere haben darauf hingewiesen, das problem ist Flucht vor dem umgekehrten Schrägstrich ein. Aber sollten Sie so eine Vermutung, wie und wo Sie die Umgebungsvariable TEMP-Punkte? Es wäre sicherer, zu verwenden Win32-API GetTempPath() oder GetTempFileName()?
BTW, dieses problem ist bedeckt von C++ FAQ Lite parashift.com/c++-faq-lite/input-output.html#faq-15.16 ich möchte Sie ermutigen, Lesen Sie die gesamte FAQ, werden Sie eine Menge lernen.

InformationsquelleAutor ModeEngage | 2009-10-31

Schreibe einen Kommentar