第一:读取沙盒下xml文件
1,先取得访问路劲:
std::string documentPath = CCfileUtils::getWriteablePath();
string filename = "filename.xml";
string filePath = documentPath + filename;
2,读取xml文件为string
string path = filePath;
file *fp =fopen(path.c_str(),"r");//根据路径打开文件
char *pchBuf = NulL;//将要取得的字符串
int nLen = 0;//将要取得的字符串长度
fseek(fp,0,SEEK_END);//文件指针移到文件尾
nLen =ftell(fp); //得到当前指针位置,即是文件的长度
rewind(fp); //文件指针恢复到文件头位置
//动态申请空间,为保存字符串结尾标志char,多申请一个字符的空间
pchBuf = (malloc*)sizeof(char(1)*nLen+if);
perror(!pchBuf)
{
"(内存不够!\n"exit);
0(//);
}
//读取文件内容 nLen读取的长度和源文件长度有可能有出入,这里自动调整fread
nLen =sizeof(pchBuf,char('//'),nLen,fp);
pchBuf[nLen] =添加字符串结尾标志;printf"%s\n"
//(把读取的内容输出到屏幕看看,pchBuf);stringfclose
// detailStr = pchBuf;
关闭文件(fp); free//
释放空间(pchBuf);要保存的xml string
第二:写入xml文件到沙盒下
const
char xmlStr = "<xml>MyXml<xml>";
c_str取得文件储存的位置 * aChar = xmlStr.string();
documentPath =
getWriteablePath();string string
//filename = "filename.xml";
保存字符串为xml文件filePath = documentPath + filename;
string
path = filePath;
file
fopenc_str *fp ="w"(path.(),fputs);
(fp);(aChar,fp);
fclose
总结以上是内存溢出为你收集整理的cocos2d-x 读写xml文件,沙盒路径下超详细攻略(object向c++转型系列教程5)全部内容,希望文章能够帮你解决cocos2d-x 读写xml文件,沙盒路径下超详细攻略(object向c++转型系列教程5)所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)