ifstream infile;
infile.open("BONUS.txt");
string info;
if (!infile)
cout << "File Open Failure" << endl;
else
{
while (infile >> info)
cout << info << endl;
infile.close();
}
这是我的代码。无论我做什么,我的文件总是无法打开。它进入if和退出。可能是什么问题?我的文本文件保存在正确的目录中,似乎没有任何问题。
答案 0 :(得分:0)
open()
中有两个参数,要打开的文件和模式。该模式指的是您可以对该文件执行的操作,即写入,读取等等。
使用open()
时有六种可能的模式:
in
代表输入。 internal stream buffer启用输入。 (用于阅读文件。)out
代表输出。 same internal buffer启用输出。 (用于写入文件。)binary
允许所有操作以二进制形式完成,而不是文本。ate
代表at end
,并在文件末尾开始输出。app
代表append
,输出事件发生在文件末尾。trunc
代表truncate
。打开之前存在的所有内容都将被删除。您似乎想要写入文件,在这种情况下使用out
。
ifstream infile;
infile.open("BONUS.txt", out);
如果您没有使用正确的模式,该功能将失败。如果您还有其他问题,可以访问Google fstream::open()
。