我正在尝试如下创建二进制文件:
#include <iostream>
#include<fstream>
using namespace std;
int main()
{
cout<<"Hello World";
fstream fileObj = std::fstream("test_File.db", std::ios::in | std::ios::out | std::ios::binary);
if(fileObj)
std::cout<<"success";
else
std::cout<<"fail";
return 0;
}
但是未创建fileObj,并且始终执行其他部分。请指导我是否有任何遗漏。
答案 0 :(得分:3)
A stream opened with in | out | binary
does not create a file that does not exist.,您应该养成阅读文档的习惯!
尝试in | out | app | binary
(假设您希望保留现有内容;还要养成清楚说明您的目标/要求的习惯)。
不需要像这样的临时初始化;只需以通常的方式实例化该对象,例如
std::fstream fileObj(
"test_File.db",
std::ios::in | std::ios::out | std::ios::app | std::ios::binary
);