相关疑难解决方法(0)

std :: fstream不会创建文件

我正在尝试使用std :: fstream for io来存档,我想创建该文件(如果它尚不存在).

  std::fstream my_stream
  my_stream.open("my_file_name",std::fstream::binary | std::fstream::in | std::fstream::out);
  if(!my_stream)
      std::cout<<"error"<<strerror(errorno);
Run Code Online (Sandbox Code Playgroud)

我得到这个结果:"没有这样的文件或目录."

在这种情况下如何创建文件?

c++ fstream stl

30
推荐指数
2
解决办法
2万
查看次数

fstream不会创建文件

我只是想创建一个文本文件,如果它不存在,我似乎fstream无法做到这一点.

#include <fstream>
using std::fstream;

int main(int argc, char *argv[]) {
    fstream file;
    file.open("test.txt");
    file << "test";
    file.close();
}
Run Code Online (Sandbox Code Playgroud)

我是否需要在open()函数中指定任何内容才能使其创建文件?我已经读过您无法指定ios::in,因为预期已存在的文件存在,但我不确定是否需要为尚不存在的文件指定其他参数.

c++ file-io fstream

21
推荐指数
2
解决办法
9万
查看次数

标签 统计

c++ ×2

fstream ×2

file-io ×1

stl ×1