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. 1.strcpy使用注意

    void test1() { char string[10]; char *str1 ="0123456789"; strcpy(string,str1); } 上述代码问题? 字 ...

  2. C#中使用Spire.docx操作Word文档

    使用docx一段时间之后,一些地方还是不方便,然后就尝试寻找一种更加简便的方法. 之前有尝试过使用Npoi操作word表格,但是太烦人了,随后放弃,然后发现免费版本的spire不错,并且在莫种程度上比 ...

  3. 《Python》 代码块、小数据池和编码转换

    一.代码块 Python程序是由代码块构造的.块是一个python程序的文本,他是作为一个单元执行的. 什么是代码块:一个py文件,一个函数,一个文件,一个类都是一个代码块. 作为交互方式输入的每一行 ...

  4. 宇宙最帅叉叉——第五周博客 for 测试与发布(Alpha版本)

    Alpha版本测试报告 1.在测试过程中总共发现了多少Bug?每个类别的Bug分别为多少个? a.修复的BUG UDP传输 recvfrom 当没有消息来的时候一直循环等待因其阻塞 ,时间戳无效了. ...

  5. 2.4 C++成员选择符

    参考:http://www.weixueyuan.net/view/6336.html 总结: 访问可以通过成员选择符“.”或指针操作符“->”来完成. 通过上一节的学习我们看到:通过对象可以访 ...

  6. SharePoint 2013的100个新功能之内容管理(四)

    一:脚本编辑器Web部件 新的脚本编辑器Web部件表现为插入标签页下的Ribbon中的"嵌入的代码",可以使用户在SharePoint网站页面中添加HTML或Javascript或 ...

  7. linux下源码安装jdk1.8和tomcat8.5

    Java是目前可移植性较高的语言,相当火热,tomcat运行就需要Java语言环境 0.java简介 1)tomcat运行需要对应的Java环境,Java环境通过安装jdk来获得2)为了防止兼容性问题 ...

  8. opencv-python教程学习系列4-opencv绘图函数

    前言 opencv-python教程学习系列记录学习python-opencv过程的点滴,本文主要介绍opencv绘图函数,坚持学习,共同进步. 系列教程参照OpenCV-Python中文教程: 系统 ...

  9. [LeetCode&Python] Problem 766. Toeplitz Matrix

    A matrix is Toeplitz if every diagonal from top-left to bottom-right has the same element. Now given ...

  10. openLayers 4 canvas图例绘制,canvas循环添加图片,解决图片闪烁问题

    一.问题来源: 接触Openlayers 一段时间了,最近做了一个农业产业系统,项目中涉及到产业图例,最后考虑用canvas来绘制图例图像.当中带图片的图例移动时,图片会实现闪烁留白情况.闪烁是因为绘 ...