c++中,fstream类的对象打开文件为什么会失败呢?
#include<iostream>#include<fstream>#include<iomanip>usingnamespacestd;constchar*file=...
#include <iostream>
#include <fstream>
#include <iomanip>
using namespace std;
const char * file="d:people.txt";
int main()
{
ofstream fout(file, ios::binary);
fout<<"hello world\n";
fout.close();//
fstream InOut;//
InOut.open(file, ios::binary);/*就是这里,开启二进制标志后,下面的文件就无法打开,问什么呢?如果还是用fout对象打开的话就会打开成功*/
//InOut.open(file, ios::app|binary);在加一个打开方式后,这样是打开成功的
if (InOut.is_open())//
cout<<"ok\n";
else
cout<<"xxxxxxx\n";
return 0;
}
为什么fstream类对象调用open函数开启二进制标志打开文件时不成功呢?
为什么open(file, ios::app|ios::binary);函数里面在加一个打开方式,文件就是打开成功呢?
如果文件里面的内容是结构变量里的数据,即使在open函数里在加一个打开方式,文件也是打开不成功呢? 展开
#include <fstream>
#include <iomanip>
using namespace std;
const char * file="d:people.txt";
int main()
{
ofstream fout(file, ios::binary);
fout<<"hello world\n";
fout.close();//
fstream InOut;//
InOut.open(file, ios::binary);/*就是这里,开启二进制标志后,下面的文件就无法打开,问什么呢?如果还是用fout对象打开的话就会打开成功*/
//InOut.open(file, ios::app|binary);在加一个打开方式后,这样是打开成功的
if (InOut.is_open())//
cout<<"ok\n";
else
cout<<"xxxxxxx\n";
return 0;
}
为什么fstream类对象调用open函数开启二进制标志打开文件时不成功呢?
为什么open(file, ios::app|ios::binary);函数里面在加一个打开方式,文件就是打开成功呢?
如果文件里面的内容是结构变量里的数据,即使在open函数里在加一个打开方式,文件也是打开不成功呢? 展开
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询