Cocos2d-x添加jsoncpp应该资料都有了,今天来讲讲数组的解析和拼装~

  1. int main()
  2. {
  3. 数组创建与分析:
  4. 例子一:
  5. string strValue = "{\"ldh\":\"001\",\"gfc\":\"002\",\"yyj\":\"003\",\"andy\":[\"005\",\"123\",\"true\"]}";
  6. Json::Reader read;
  7. Json::Value value;
  8. value["ldh"] = "001";
  9. value["gfc"] = "002";
  10. value["andy"].append( "005" );
  11. value["andy"].append( "123" );
  12. value["andy"].append( "true" );
  13. //if( read.parse( strValue,value ) )
  14. {
  15. Json::Value val_array = value["andy"];
  16. int iSize = val_array.size();
  17. for ( int nIndex = 0;nIndex < iSize;++ nIndex )
  18. {
  19. cout<<val_array[nIndex]<<endl;
  20. }
  21. }
  22. 例子二:
  23. Json::Reader read;
  24. Json::Value value;
  25. value["ldh"] = "001";
  26. value["gfc"] = "002";
  27. Value item;
  28. Value array;
  29. item["andy1"] = "005";
  30. array.append( item );
  31. item["andy1"] = "123";
  32. array.append( item );
  33. item["andy1"] = "true";
  34. array.append( item );
  35. value["andy"] = array;
  36. cout<<value.toStyledString()<<endl;
  37. Json::Value val_array = value["andy"];
  38. int iSize = val_array.size();
  39. for ( int nIndex = 0;nIndex < iSize;++ nIndex )
  40. {
  41. cout<<val_array[nIndex]<<endl;
  42. if ( !val_array[nIndex]["andy1"].isNull() )
  43. {
  44. cout<<val_array[nIndex]["andy1"]<<endl;
  45. }
  46. }
  47. 例子三:
  48. std::string strValue = "{\"name\":\"json\",\"array\":[{\"cpp\":\"jsoncpp\"},{\"java\":\"jsoninjava\"},{\"php\":\"support\"}]}";
  49. Json::Value value;
  50. Reader read;
  51. if ( !read.parse( strValue,value ) )
  52. {
  53. return -1;
  54. }
  55. cout<<value.toStyledString()<<endl;
  56. Json::Value val_array = value["array"];
  57. int iSize = val_array.size();
  58. for ( int nIndex = 0;nIndex < iSize;++ nIndex )
  59. {
  60. cout<<val_array[nIndex]<<endl;
  61. if ( val_array[nIndex].isMember( "cpp" ) )
  62. {
  63. cout<<val_array[nIndex]["cpp"]<<endl;
  64. }
  65. }
  66. getchar();
  67. return 0;
  68. }

jsoncpp解析拼装数组的更多相关文章

  1. xml格式报文的拼装,和解析成实体类

    我们的微信支付,使用的是第三方的支付,某银行的微信支持渠道.所有的接口请求.应答都是xml格式报文,这样就需要用到xml格式报文的拼装和解析,这儿简单讲一下. 拼接xml格式报文. 从页面表单提交和配 ...

  2. 使用Map辅助拼装树状结构,消除递归调用

    目前菜单或其他树状结构在数据库中的存储,多数是以一个parentid作为关联字段,以一维形式存储.使用时全部查询出来,然后在内存中拼装成树状结构.现在主要涉及的是拼装方法的问题. 一般可以进行 递归调 ...

  3. Yii2查询之where条件拼装

    目录 1 语法 2 哈希格式 3 运算符格式 3.1 对比 3.2 and 3.3 or 3.4 not 3.5 between和not between 3.6 in和not in 3.7 like ...

  4. 数据结构图文解析之:数组、单链表、双链表介绍及C++模板实现

    0. 数据结构图文解析系列 数据结构系列文章 数据结构图文解析之:数组.单链表.双链表介绍及C++模板实现 数据结构图文解析之:栈的简介及C++模板实现 数据结构图文解析之:队列详解与C++模板实现 ...

  5. Json---使用Jsoncpp解析与写入

    上述Json解析使用的是Jsoncpp,要使用Jsoncpp,得做如下几步的配置: 1.首先从http://sourceforge.net/projects/jsoncpp/下载,压缩包大约105k. ...

  6. 【Raspberry Pi】新入手的Raspberry Pi3拼装日志

    一.概述 2016年暑假某宝入手Raspberry Pi 3,装机清单: 树莓派主板 亚克力外壳 小风扇 散热片 30G SD card 螺丝若干颗 因机型问题,可能与你的机器有微小差异 二.装机过程 ...

  7. Ibatis动态拼装sql,常用标签总结及举栗子。

    今天得到项目经理一项任务,就是拼装sql,第一次见到,不是太懂,赶紧回来睡一觉再说,由于这次的项目orm使用的是ibatis框架,所以需要使用动态拼装sql,或者是ognl语言,这门语言不是专属于ib ...

  8. JS 拼装代码的HTML onClick方法传递字符串

    有时会在JS中拼装HTML代码,这时在HTML中出现的onClick()方法中: 1.出现传递Num型的数据,直接拼装进去即可: 2.可能会出现传递字符串的情况,处理方法比较特殊,如下: a:直接字符 ...

  9. JS下高效拼装字符串的几种方法比较与测试代码

    在使用Ajax提交信息时,我可能常常需要拼装一些比较大的字符串通过XmlHttp来完成POST提交.尽管提交这样大的信息的做法看起来并不优雅,但有时我们可能不得不面对这样的需求.那么JavaScrip ...

随机推荐

  1. 弹出层小插件之(二) layer&layui

    其实layer或者layui相对于上次所说的 sweetalert来说不仅仅有弹出层,它有很多的功能,这也大大的提高了我们的开发效率,根据我们项目的实际需要的效果进行选择.下面介绍下Layer的用法吧 ...

  2. ios下 animation-play-state不起作用

    这个问题在 做H5音频播放的时候 困扰了好久,PC端一切正常,单单 移动端 出现各种杂乱的问题,也是醉了. 后来经过大量的检索,发现了一种方案很不错: 请看案例   原  创 完全兼容,各个设备,很不 ...

  3. bzoj1053&&51nod1060

    题解: 其实就是求1-n之中拥有最多约数的数 一个数x的质因数分解为p1^e1*p2^e2*...*pn^en,则正因数的个数为(e1+1)(e2+1)...(en+1) 那么发现,正因数的个数和p没 ...

  4. L1-034 点赞

    微博上有个“点赞”功能,你可以为你喜欢的博文点个赞表示支持.每篇博文都有一些刻画其特性的标签,而你点赞的博文的类型,也间接刻画了你的特性.本题就要求你写个程序,通过统计一个人点赞的纪录,分析这个人的特 ...

  5. jenkins系列(9)--插件之Archive The Artifacts

    点击标题下「蓝色微信名」可快速关注 坚持的是分享,搬运的是知识,图的是大家的进步,没有收费的培训,没有虚度的吹水,喜欢就关注.转发(免费帮助更多伙伴)等来交流,想了解的知识请留言,给你带来更多价值,是 ...

  6. TX2-start 6 CPU kernel-开启高功耗模式

    1.TX2简介 Jetson TX2是由一个GPU和一个CPU集群组成.CPU集群由双核denver2处理器和四核ARM Cortex-A57组成,通过高性能互连架构连接.拥有6个CPU核心和一个GP ...

  7. Vec3b类型数据确定颜色通道

    前言 这几天实习生测试一张图像的三个通道分别是什么颜色,使用的是Vec3b类型,然后发现了一个有意思的点.. 测试过程 先创建了一定大小的数据, Mat test( , , CV_8UC3, Scal ...

  8. git中的bug分支和Feature分支

    /*游戏或者运动才能让我短暂的忘记心痛,现如今感觉学习比游戏和运动还重要——曾少锋*/ 如果对于分支还不太明白的学者.请先参考:http://www.cnblogs.com/zengsf/p/7512 ...

  9. 查找单链表的倒数第k个值

    刚开始,我想到的是一种笨方法,先遍历单链表,计算出单链表的长度len,然后再从头遍历单链表到第len-k个节点,那么 这个节点既是单链表的倒数第k个节点. 不过这种算法时间复杂度挺高的,还有一种更简单 ...

  10. JavaScript 之call , apply 和prototype 介绍

    1. 前言 为什么将这三个概念放在一起说.原因是这些是会在实现js 继承会需要使用到的 2. call 和 apply call 和 apply 的作用基本类似, 都是去执行function并将这个f ...