#include <fstream>
#include <iostream>
//Bear in mind that the text file is already in the resources file
int main()
{
ifstream file("Hamlet.txt", ios::in);//open file
if (file.is_open() == true) cout << "File is open" << endl;
else if (file.is_open() == false) cout << "File isnt open" << endl;
return 0;
}
所以我想看看文件是否打开,文本文件在资源文件中,据我所知文件的路径可以写成“Hamlet.txt”。我一直收到文件未打开,可能是什么原因? 任何人都可以对此做出解释吗? 提前致谢
最佳答案
如果您谈论的是 Win32 资源文件,则无法打开您的文件 像那样。您需要使用资源 API:
HRSRC const rsrc = FindResource(nullptr, MAKEINTRESOURCE(HAMLET), RT_STRING);
HGLOBAL const resource = LoadResource(nullptr, rsrc);
void const* const data = LockResource(resource);
// Use your data here.
HAMLET
是一个预处理器宏,用于从 .rc 文件中识别您的“Hamlet.txt”文件。
关于c++ - 无法打开文本文件,尽管它在我的资源文件中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34178344/