1、加入一个库文件(json.h)
2、实现
例如1:
一、void AA::A()
{
JSONNode root(JSON_NODE);//根节点
JSONNode array(JSON_ARRAY);//加入数组
array.set_name("Tollgate");//表示是数组的名称,所以应该加在里面
JSONNode n1(JSON_NODE),n2(JSON_NODE);
JSONNode n11(JSON_NODE),n21(JSON_NODE);
n11.set_name("11");
n11.push_back(JSONNode("refresh1","aa"));
n11.push_back(JSONNode("count1","100"));
n21.set_name("21");
n21.push_back(JSONNode("refresh2","bb"));
n21.push_back(JSONNode("count2","5"));
n1.push_back(n11);
n2.push_back(n21);
array.push_back(n1);
array.push_back(n2);
root.push_back(array);
std::cout<<root.write_formatted()<<std::endl;
}
二、
{
JSONNode n(JSON_NODE);
JSONNode c(JSON_ARRAY);
c.set_name("Tollgate");
JSONNode c1(JSON_NODE),c2(JSON_NODE);
JSONNode t1(JSON_NODE),t2(JSON_NODE);
t1.set_name("type1");
t2.set_name("type2");
t1.push_back(JSONNode("refreshTime", 0.5));
t1.push_back(JSONNode("Count", 100));
t2.push_back(JSONNode("refreshTime", 5));
t2.push_back(JSONNode("Count", 2));
c1.push_back(t1);
c2.push_back(t2);
c.push_back(c1);
c.push_back(c2);
n.push_back(c);
cout<<endl<<n.write_formatted()<<endl<<endl;
}
运行结果:
例如2:
void AA::B()
{
JSONNode n(JSON_NODE);
n.push_back(JSONNode("Root","value in parent node"));
JSONNode c(JSON_ARRAY);
c.set_name("ChildName");
JSONNode c1(JSON_NODE),c2(JSON_NODE);
c1.push_back(JSONNode("childA","String value c1"));
c1.push_back(JSONNode("childB","dsf c1"));
c2.push_back(JSONNode("childA","String value c2"));
c2.push_back(JSONNode("childB","dsf c2"));
c.push_back(c1);
c.push_back(c2);
n.push_back(c);
std::cout<<n.write_formatted()<<std::endl;
}
运行的结果如下: