我的虚拟文件系统提取器出了问题。
ofstream ofs(path, ios::out|ios::binary);
ofs.write(file, length);
ofs.close();
Path是一个例子“data / char / actormotion.txt”,应该在名为actormotion.txt的目录data / char / file中创建文件但是没有做任何事情。
答案 0 :(得分:0)
检查它是否先打开
std::ofstream ofs(path, ios::out|ios::binary);
if (ofs.is_open())
{
// write stuff
ofs.close();
}
else
{
std::cout << "Error opening file";
}
答案 1 :(得分:-1)
更有可能的文件未打开。您可以使用bool is_open()
方法进行检查。
建议打开流后检查其状态以确保一切顺利:
ofstream ofs(path, ios::out|ios::binary);
if ( (ofs.rdstate() & std::ofstream::failbit ) != 0 ){
//stream opened successfully, do the stuff...
在Windows系统中,您可以在调用错误代码后立即调用GetLastError()
。