有关tinyxml的疑难杂症

还是要求助大家,我自己整了几天了,卡在一个问题。

rapidjson::Document doc2;
unsigned long size1 = 0;
string filePath = CCFileUtils::sharedFileUtils()->fullPathForFilename(“flyshoot_shop.json”);
CCLog(“filePath %s”,filePath.c_str());
const char* data2 = (char*)CCFileUtils::sharedFileUtils()->getFileData(filePath.c_str(), “r”, &size1);
doc2.Parserapidjson::kParseDefaultFlags(data2);

if (doc2.HasParseError() || !doc2.IsArray())
{
CCLog(“get json data err!”);
}
else
{
CCLog("%s",data2);
}

for(unsigned int i=1;i<doc2.Size();i++)
{

rapidjson::Value &v=doc2*;*

ShopMessage item;

int a=0;
item.m_iId = v.GetInt();
item.m_cName = v.GetString();
item.m_cDescribe = v.GetString();
item.m_iLevel1 = v.GetInt();
item.m_iLevel2 = v.GetInt();
item.m_iLevel3 = v.GetInt();
item.m_iLevel4 = v.GetInt();
item.m_iLevel5 = v.GetInt();
item.m_iLevel6 = v.GetInt();
item.m_iLevel7 = v.GetInt();
item.m_iLevel8 = v.GetInt();

shopMsgMap.insert(make_pair(item.m_iId,item));
}
CCLOG(“MapSize = %lu”,shopMsgMap.size());

报错信息
Cocos2d: filePath /private/var/mobile/Containers/Bundle/Application/CC786C8E-1EEC-4A34-B03E-42AE7E17D2EA/FlyShoot.app/flyshoot_shop.json
Cocos2d: get json data err!
Assertion failed: (IsArray()), function Size, file /Users/user/Documents/cocos2d-x-2.2.2/projects/FlyShoot/proj.ios/…/…/…/extensions/CocoStudio/Armature/utils/…/…/Json/rapidjson/document.h, line 333.

json文件名字flyshoot_shop.json
内容如下
“id”,“name”,“describe”,“level1”,“level2”,“level3”,“level4”,“level5”,“level6”,“level7”,“level8”]
,
,
,
,
,
,
,
,
,
]

很搞的问题是。有时候执行成功读取,有时候报错。。

求助各位大神了。

忘了说了:
引擎版本2.2.2
运行环境iphone 6