Cocos2d-X 写JSon格式的文件

来源:互联网 发布:人肉好吃吗 知乎 编辑:程序博客网 时间:2024/04/29 06:47

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;

}

运行的结果如下:












0 0