找到一个,回家慢慢看
cocos2d读取xml文件 : http://blog.csdn.net/q3745960/article/details/8350177
void HXmlParse::startElement(void *ctx,const char* name,const char** atts)
{
CC_UNUSED_PARAM(ctx);
startXmlElement=(char*)name;
if(!isJumpHeadData){ //跳过数据头(false)
isJumpHeadData=true;
root_name=startXmlElement;
return;
}
else{
}
if(atts){ //有属性值
int i=0;
CCString *datastr;
while(atts*)<span style="white-space:pre"> </span>//atts存有name的属性(单数是属性名,双数是数值)
{
datastr=new CCString();
// CCString datastr;
std::string keystr(atts*);<span style="white-space:pre"> </span>//属性名
datastr->m_sString=atts*;<span style="white-space:pre"> </span>//数值
CCLOG("atts%d]=%s keystr=%s",i,atts*,keystr.c_str());
CCLOG("atts%d]=%s data=%s",i+1,atts*,datastr->m_sString.c_str());
mDic->setObject(datastr,keystr); //setobject()传进去Object是传引用,所以每次调用都要不同的对象。(要不然会覆盖)
// if(mDic->valueForKey())
// CCLOG("count=%d",mDic->count());
std::string teststr("name");
CCLog("-----key:%s, value:%s",teststr.c_str(),mDic->valueForKey(teststr)->m_sString.c_str());
i=i+2;
}
}
CCLOG(startXmlElement.c_str());
}
*****