现在我这样一个json字符串:

    char* cjson = "{\"code\": \"200\",     \"code2\": 200}";
Json::Value root;
Json::Reader Jreader;
Jreader.parse(cjson ,root);

这个字符串的code:“200”   code2:200

现在出现一个问题,我要使用这个code值做判断

比如我要判断code是否等于“200”

期间遇到很多问题,最后终于试出两种code的判断方式:

    if(root["code"].toStyledString().compare("\"200\"\n") == )
cout<<"ok"<<endl;
if(root["code2"].asInt() == )
cout<<"ok2"<<endl;

第二个的code2的判断是常规方法

而第一个的code,没想到 除了两个双引号(“”)要加,还需要加一个回车符做判断(\n)

这个就是jsoncpp库的问题吧

ops!又加了两种进行比较:

 char* cjson = "{\"code\": \"200\",     \"code2\": 200, \"code3\": \"\", \"code4\": }";
Json::Value root;
Json::Reader Jreader;
Jreader.parse(cjson ,root);
if(root["code"].toStyledString().compare("\"200\"\n") == )
cout<<"ok"<<endl;
if(root["code2"].asInt() == )
cout<<"ok2"<<endl;
if(root["code3"].toStyledString().compare("\"\"\n") == )
cout<<"ok3"<<endl;
if(root["code4"].toStyledString().compare("null\n") == )
cout<<"ok4"<<endl;

[原]JSON 字符串(值)做判断,比较 “string ”的更多相关文章

  1. jdk1.8下字符串常量的判断,String.intern()分析

    字符串常量池在jdk升级过程中发生了一些变化 在JDK1.6中,它在方法区中,属于“永久代”. 在JDK1.7中,它被移除方法区,放在java堆中. 在JDK1.8中,取消了“永久代”,将常量池放在元 ...

  2. fastjson 将json字符串转化成List<Map<String, Object>>

    亲测可行,如下: JSON.parseObject(jsonstr, new TypeReference<List<Map<String, Object>>>() ...

  3. JSON取值前判断

    public static void main(String[] args)throws Exception{ String jsonStr1="{\"access_token\& ...

  4. python-json.loads()保持原json字符串的顺序

    import jsonfrom collections import OrderedDictmetadata = json.loads(text, object_pairs_hook=OrderedD ...

  5. 彻底了解构建 JSON 字符串的三种方式

    原创播客,如需转载请注明出处.原文地址:http://www.cnblogs.com/crawl/p/7701856.html 前言:JSON 是轻量级的数据交换格式,很常用,尤其是在使用 Ajax ...

  6. 【JSON】JSON字符串的操作(不断积累中)

    一.JS遍历JSON串 示例01 目标:返回的JSON串中,一个Key对应的Value是一个数组(若在Java程序中,是一个List). 现在要求获取每个数组中的第一个对象元素中的name属性的值. ...

  7. java解析json字符串详解(两种方法)

    一.使用JSONObject来解析JSON数据官方提供的,所以不需要导入第三方jar包:直接上代码,如下 private void parseJSONWithJSONObject(String Jso ...

  8. JSON字符串解析

    有时保存在数据库的数据是一串json字符串,需要进行读取的时候就需要解析操作. 简单介绍两种: 1.net.sf.json.* 2.com.alibaba.fastjson.* 需要的包自行下载. 第 ...

  9. C#基础---C#如何对Json字符串处理

    Json字符串对于做web应用的应该很熟悉,其实在很多请求我们返回的都是Json字符串.那对于C#代码如何处理Json字符串呢,.Net封装了一个类叫做JavaScriptSerializer[MSD ...

随机推荐

  1. 前端模板引擎artTemplate.js

    . 关于artTemplate模板引擎的详细原理请移步高性能JavaScript模板引擎原理解析,本文只探讨如何使用.初学前端的人一般对于绑定数据都是使用原生js或者jquery来拼接字符串,此为ha ...

  2. Android Studio在代码重构中的妙用

    代码重构几乎是每个程序员在软件开发中必须要不断去做的事情,以此来不断提高代码的质量.Android Stido(以下简称AS)以其强大的功能,成为当下Android开发工程师最受欢迎的开发工具,也是A ...

  3. 利用python jieba库统计政府工作报告词频

    1.安装jieba库 舍友帮装的,我也不会( ╯□╰ ) 2.上网寻找政府工作报告 3.参照课本三国演义词频统计代码编写 import jieba txt = open("D:\政府工作报告 ...

  4. cmds系统归并缓慢的处理过程 2017-2-16

      检查反应较慢的时间段,数据库整体运行情况,从awr报告总看看是否有异常   以上是两个节点的等待事件排行,其中发现cursor: pin S wait on X等待事件类型是并行,切较高,开始分析 ...

  5. 数组中有一个数字出现的次数超过数组长度的一半(C、Python)

    C语言 1 /* 2 ----------------------------------- 3 动态分配需要的内存大小 4 输入数组元素的值 5 通过函数调用,传地址对数组排序 6 循环每个元素,当 ...

  6. react 沉思录

    react = Virtual DOM + component + data flow + jsx 核心是Virtual DOM结构的状态维护.渲染机制及UI系统的DOM组织功能: 基于Virtual ...

  7. UI系统的分类

    1.DSL系统:UI领域特定语言 html markdown; 与平台无关,只与通用UI领域有关: 2.平台语言系统(通用语言系统) UI概念在平台和通用语言中的表示. 一.信息表达: 基本信息:文本 ...

  8. Educational Codeforces F. Remainder Problem

    [传送门] 题意就是单点加以及查询下标为等差数列位置上的值之和.刚开始看到这道题.我以为一个数的倍数是log级别的.就直接写了发暴力.就T了.还在想为啥,优化了几发才发现不太对劲.然后才想到是$\df ...

  9. learning shell monitor prog function

    [Purpose]        Shell script monitor prog function   [Eevironment]        Ubuntu 16.04 bash env   [ ...

  10. pandas模块中序列Series和列表List的区别

    列表:输出结果在中括号中,且各元素之间以逗号分隔 序列:竖着的形式展示数据 print("列表的输出形式:") a=[1,2,3,4] print(a) print(type(a) ...