1、判断决定路径下文件是否存在
这样操作后,我们就对WritablePath路径下文件进行读写,如果不这样的话,Resource路径下的文件在安卓下将移植到Assets 路径下,而Assets路径下的文件,好像是不能写,反正我是遇到了写不进去的情况~
std::string path=CCFileUtils::sharedFileUtils()->getWritablePath()+fileName;
bool isFileExist=CCFileUtils::sharedFileUtils()->isFileExist(path);
2、如果你把Cocos2d-x 项目打包成安卓项目后,注意下路径的相关问题
如果你在Cocos2d-x 的Resource 目录下有相关的配置文件例如说某.plist 文件,如果你想修改.plist 文件那么,应该把.plist 在程序首次运行的时候,写到安卓的Writable路径下
//当玩家第一次进入游戏的时候
void Loading::onFirstLoginWriteServerInfo()
{
//获取可读写的路径和自定义文件名
std::string writabelPath=CCFileUtils::sharedFileUtils()->getWritablePath()+"test.plist";
if (!CCFileUtils::sharedFileUtils()->isFileExist(writabelPath))
{
//打开Resource路径下的.plist文件
CCDictionary *serverInfoDic=CCDictionary::createWithContentsOfFile("apps/test.plist");
if (serverInfoDic)
{
//把test.plist 写到writablePath路径下
LOGAnroid("serverinfo.plist___writabelPath==%s",writabelPath.c_str());
serverInfoDic->writeToFile(writabelPath.c_str());
}
}
else
{
//非第一次登录游戏
LOGAnroid("NotFirstIn");
}
}
这样操作后,我们就对WritablePath路径下文件进行读写,如果不这样的话,Resource路径下的文件在安卓下将移植到Assets 路径下,而Assets路径下的文件,好像是不能写,反正我是遇到了写不进去的情况~