要从文件中读取数据,但是总是打不开文件。
反复调试查看,发现open调用失败,但是文件的目录,是自己获取的绝对目录
使用GetModuleFileName(NULL,filepath,sizeof(filepath));方法获取的当前应用程序的目录,在拼接成在即要打开的文件的目录,反复验证后,目录的路径是没有问题的。
但是结果就是打不开文件,读取不到自己想要的东西。
fstream fs;
fs.open(filepath,ios::in);
if(!fs)
{
//
}
else
{
fs.getline(buffer,256,'\n');
fs.close();
}
经过反复的设置,试验filepath的路径。最后发现filepath中不可以有中文目录,更加准确的理解应该为:filepath中应该全为英文。
最后,自己把路径换为相对路径“.\filepath”。
这个错误很低级,但是自己出现了就记录一下,希望对看到的人有所帮助。