我面临一个问题,程序无法打开我想写的文件。最小,完整和可变化的代码如下所示:
#include <cstdio>
#include <fstream>
using namespace std;
int main(){
string root_path = "E:\\160818\\";
string file_path = root_path + "haar_data.txt";
ofstream haar_file(file_path.c_str());
if(!haar_file) // < -------- File cannot be open
{
cout<<"Error opening file for writing\n";
return 1;
}
haar_file.close();
return 0;
}
我的编译器是VS2008。屏幕中的输出是
打开文件进行写入时出错。
错误是什么?我想打开这个文件写点什么。
答案 0 :(得分:3)
我编译了你的代码并使用它,它运作了。
请注意,您没有在提供的代码中包含iostream,因此我必须添加它,因为'cout'表达式。 请注意,从c ++ 11开始,您不需要使用.C_str()来打开文件。 请注意,如果您的文件不存在,因为您使用ofstream(使用ios :: out打开),无论如何都会创建您的文件。 您使用管理员权限吗? 你的路径是否正确(文件夹名称错误?)