0
3文件I/O流全局声明(所有功能外)无法打开的二进制文件
ifstream fin;
ofstream fout;
fstream file;
这些是发生问题2层的功能。由于某些原因文件“quizquestions.dat”无法打开。由于该声明退出(1);正在执行,程序正在终止。问题编号没有正确分配。对象“普遍”是我的课堂问题存储问题的一个对象。 代码被编译并且没有错误。
void questionnumber()
{
int file_size=0;
fin.open("quizquestions.dat",ios::in|ios::binary);
fin.seekg(0,ios::end);
file_size = file.tellg();
if(file_size==0)
universal.assignquestion(1);
fin.close();
int next_question = (file_size/sizeof(question)) + 1;
universal.assignquestion(next_question);
}
void addquestion()
{
ch='y';
do
{
cout<<"Adding question now\n";
cout<<"Please\n";
universal.createquestion();
questionnumber();
fout.open("quizquestions.dat",ios::app|ios::binary);
if(!fout)
exit(1);
fout.write((char*)&universal,sizeof(question));
fout.close();
cout<<"Your question is added\nYour question details are as follows"<<endl;
universal.dispquestion();
cout<<"Do you want to add more questions?(Y/N)\n";
cin>>ch; cin.ignore();
}
while(ch=='y'||ch=='Y');
if(ch!='y'||ch!='Y')
dispsetting();
}
你有没有找到合适的路径? –
对不起,什么路径? – Harsh
你确定该文件存在于你编译好的exe文件存在的位置吗?你还应该尝试ios :: out标志 – hjindal