Datei lesen - klappt nicht
-
Hallo,
ich kann eine Datei erzeugen, nur öffnen funktioniert leider nicht.
system("bcdedit | find /i \"nx\" > %temp%\\bcdedit.txt"); std::string line; std::ifstream myfile("%temp%\\bcdedit.txt"); if (myfile.is_open()) { while (std::getline(myfile, line)) { LPCSTR cstr = line.c_str(); MessageBox(NULL, cstr, "If it is AlwaysOff, everything is fine.", MB_OK); } myfile.close(); } else{ std::cout << "Unable to open file"; }
Sieht jemand den Fehler? Danke.
-
Die Ersetzung von
%temp%
in Z. 3 wird nicht funktionieren.
Das ist ja Feature Deiner Shell.
-
hi,
um das Problem mit dem Pfad zu lösen, habe ich nun das:
system("bcdedit | find /i \"nx\" > %temp%\\bcdedit.txt"); char const* bufer[100]; bufer = getenv("TEMP") + "\\bcdedit.txt"; std::ifstream inf(bufer);
Mal eben den Pfad zusammensetzen mag C++ nicht wie ich es von anderen Sprachen gewohnt war. Wie setze ich "bufer" korrekt zusammen
-
Genauso wie du bisher in deinem Code 'line' benutzt, d.h. verwende dafür auch einen std::string.