我正在尝试使用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)
我得到这个结果:"没有这样的文件或目录."
在这种情况下如何创建文件?
我只是想创建一个文本文件,如果它不存在,我似乎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,因为预期已存在的文件存在,但我不确定是否需要为尚不存在的文件指定其他参数.