ofstream:无法打开文件

时间:2016-08-18 09:08:40

标签: c++ ofstream

我面临一个问题,程序无法打开我想写的文件。最小,完整和可变化的代码如下所示:

#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。屏幕中的输出是

  

打开文件进行写入时出错。

错误是什么?我想打开这个文件写点什么。

1 个答案:

答案 0 :(得分:3)

我编译了你的代码并使用它,它运作了。

请注意,您没有在提供的代码中包含iostream,因此我必须添加它,因为'cout'表达式。 请注意,从c ++ 11开始,您不需要使用.C_str()来打开文件。 请注意,如果您的文件不存在,因为您使用ofstream(使用ios :: out打开),无论如何都会创建您的文件。 您使用管理员权限吗? 你的路径是否正确(文件夹名称错误?)