Это действительно странно. Абсолютный путь не работает как для потока, так и для потока. Он работает, когда я использую относительный путь следующим образом:fstream абсолютный путь не работает
ofstream out;
out.open("file2.txt");
string river = "i love cheese";
if(!out){
cout << "error"; // have breakpoint set here
} else {
out << river; // have breakpoint set here (stops here when debugging)
}
out.close();
Но когда я использую абсолютный путь, это не так. Мне хорошо известно, что нужно использовать «\» для косой черты, и я попытался использовать «/» вместо этого, и он все еще не работает.
ofstream out;
out.open("C:\\file2.txt"); // also tried "C:/file2.txt"
string river = "i love cheese";
if(!out){
cout << "error"; // have breakpoint set here (stops here when debugging)
} else {
out << river; // have breakpoint set here
}
out.close();
мне действительно нужно, чтобы работать с абсолютным путем, так как это то, что при условии, функции и входные и выходные файлы не всегда будут находиться в той же папке, как двоичный файл.
У вас есть разрешение на писать в 'C:'? – GManNickG
Вызов 'perror (" open failed ");' когда 'out.open' оценивается как false. Это скажет вам, почему он не работает. –
Выводит ли ошибка в консоль? Я делаю приложение Windows, у которого нет консоли. : -/ – alex