C ++写入文件不起作用?

时间:2013-11-28 20:42:29

标签: c++ macos file io ofstream

我目前正在开发一款iPhone游戏,它通过TCP将声音文件发送到服务器程序。 TCP传输运行良好(我已经尝试使用缓冲区来检查它是否与声音文件匹配,它确实如此)。问题是......我想将声音文件写在服务器上自己的文件夹中。每个游戏都有其唯一的gameID,gameID应该是服务器上的文件夹名称。

我的写文件功能目前如下所示:

void PacketInterpreter::makeFile(int gameID, std::string buffer){
    std::string gameIDdir = "mkdir " + std::to_string(gameID);
    std::system(gameIDdir.c_str());
    std::string constructedPath = std::to_string(gameID);
    constructedPath += "/";

    std::ofstream thisFile;
    thisFile.open(constructedPath+"sound.caf");
    thisFile << buffer;
    thisFile.close();

    std::cout << "File assembled at " << constructedPath << "sound.caf" << std::endl;
}

一切似乎都运行良好 - 缓冲区包含文件数据,函数打印最后一句,函数返回。唯一的错误是...当我在构造目录中查找文件时,它不存在。

我做错了什么?操作系统是OSX 10.9先谢谢!

0 个答案:

没有答案