#include <iostream>
#include <fstream>
#include <cstdlib>
using namespace std;
int main() {
fstream inOutGrades( "grades.dat", ios::in | ios::out | ios::binary );
if ( !inOutGrades ) {
cerr << "The file could not be opened." << endl;
exit(1);
}
return 0;
}
//Output is
The file could not be opened.
我在Windows 7和lubuntu上用QT和Code :: blocks尝试过这个程序。他们都无法创建grades.dat文件。
答案 0 :(得分:3)
删除ios::in
,然后创建文件。如果文件不存在,则无法指定ios::in
。但是,如果您添加ios::trunc
,则可以同时指定ios::in
和ios::out
,因为您从一个空文件开始。
答案 1 :(得分:0)
fstream FHandle;
FHandle.open("grades.dat", ios::out);
if(FHandle.is_open())
cout << "Opened !";
else
cout << "Not Opened !";
这应该有用。