我无法访问程序中的文件并起草(主要是复制和粘贴)一段用于测试,只是为了排除故障。
fstream file;
file.open("thishere.txt");
if(file.is_open())
{
cout << "Managed to open file" << endl;
file << "Here's some info for muh file\n";
cout << "Attempted to give info to file, read: " << endl;
string line;
while ( getline (file,line) )
{
cout << line << '\n';
}
} else cout << "Failed to open file" << endl;
程序返回Managed to open file \n Attempted to give info to file, read:
并停在那里。文件中已有文本可以读取,并且不会返回任何内容。此外,文件中没有任何新内容。
因此它既不会记录文件的信息,也不会从文件中读取信息,即使它被认为是开放的。当我从目录中删除文件时,我的程序会显示Failed to open file
。我听说IDE使用了错误的目录,所以我在我想要的目录中手动使用了EXE并得到了相同的结果。我有权访问该文件,并以管理员身份运行EXE。
我错过了什么?
我正在使用Windows 8,如果那是相关的
如果有人关心我解决了我自己的问题,那只是代码的一半。没有file.close()所以文件没有保存。 Kenny Orstroms的回答也解决了我没有文字出现的问题。现在好了!