您的位置:首页 > Web前端 > JavaScript

jsoncpp解析拼装数组

2016-05-17 19:45 411 查看
Cocos2d-x添加jsoncpp应该资料都有了,今天来讲讲数组的解析和拼装~

[cpp] view
plain copy

int main()  

{  

数组创建与分析:  

例子一:  

string strValue = "{\"ldh\":\"001\",\"gfc\":\"002\",\"yyj\":\"003\",\"andy\":[\"005\",\"123\",\"true\"]}";  

Json::Reader read;  

Json::Value value;  

value["ldh"] = "001";  

value["gfc"] = "002";  

value["andy"].append( "005" );  

value["andy"].append( "123" );  

value["andy"].append( "true" );  

//if( read.parse( strValue,value ) )  

{  

Json::Value val_array = value["andy"];  

int iSize = val_array.size();  

for ( int nIndex = 0;nIndex < iSize;++ nIndex )  

{  

cout<<val_array[nIndex]<<endl;  

}  

}  

  

  

例子二:  

Json::Reader read;  

Json::Value value;  

value["ldh"] = "001";  

value["gfc"] = "002";  

Value item;  

Value array;  

item["andy1"] = "005";  

array.append( item );  

item["andy1"] = "123";  

array.append( item );  

item["andy1"] = "true";  

array.append( item );  

value["andy"] = array;  

cout<<value.toStyledString()<<endl;  

Json::Value val_array = value["andy"];  

int iSize = val_array.size();  

for ( int nIndex = 0;nIndex < iSize;++ nIndex )  

{  

cout<<val_array[nIndex]<<endl;  

if ( !val_array[nIndex]["andy1"].isNull() )  

{  

cout<<val_array[nIndex]["andy1"]<<endl;  

}  

}  

  

  

例子三:  

std::string strValue = "{\"name\":\"json\",\"array\":[{\"cpp\":\"jsoncpp\"},{\"java\":\"jsoninjava\"},{\"php\":\"support\"}]}";    

Json::Value value;  

Reader read;  

if ( !read.parse( strValue,value ) )  

{  

return -1;  

}  

cout<<value.toStyledString()<<endl;  

Json::Value val_array = value["array"];  

int iSize = val_array.size();  

for ( int nIndex = 0;nIndex < iSize;++ nIndex )  

{  

cout<<val_array[nIndex]<<endl;  

if ( val_array[nIndex].isMember( "cpp" ) )  

{  

cout<<val_array[nIndex]["cpp"]<<endl;  

}  

}  

  

getchar();  

return 0;  

}  
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: