[原]JSON 字符串(值)做判断,比较 “string ”
现在我这样一个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 ”的更多相关文章
- jdk1.8下字符串常量的判断,String.intern()分析
字符串常量池在jdk升级过程中发生了一些变化 在JDK1.6中,它在方法区中,属于“永久代”. 在JDK1.7中,它被移除方法区,放在java堆中. 在JDK1.8中,取消了“永久代”,将常量池放在元 ...
- fastjson 将json字符串转化成List<Map<String, Object>>
亲测可行,如下: JSON.parseObject(jsonstr, new TypeReference<List<Map<String, Object>>>() ...
- JSON取值前判断
public static void main(String[] args)throws Exception{ String jsonStr1="{\"access_token\& ...
- python-json.loads()保持原json字符串的顺序
import jsonfrom collections import OrderedDictmetadata = json.loads(text, object_pairs_hook=OrderedD ...
- 彻底了解构建 JSON 字符串的三种方式
原创播客,如需转载请注明出处.原文地址:http://www.cnblogs.com/crawl/p/7701856.html 前言:JSON 是轻量级的数据交换格式,很常用,尤其是在使用 Ajax ...
- 【JSON】JSON字符串的操作(不断积累中)
一.JS遍历JSON串 示例01 目标:返回的JSON串中,一个Key对应的Value是一个数组(若在Java程序中,是一个List). 现在要求获取每个数组中的第一个对象元素中的name属性的值. ...
- java解析json字符串详解(两种方法)
一.使用JSONObject来解析JSON数据官方提供的,所以不需要导入第三方jar包:直接上代码,如下 private void parseJSONWithJSONObject(String Jso ...
- JSON字符串解析
有时保存在数据库的数据是一串json字符串,需要进行读取的时候就需要解析操作. 简单介绍两种: 1.net.sf.json.* 2.com.alibaba.fastjson.* 需要的包自行下载. 第 ...
- C#基础---C#如何对Json字符串处理
Json字符串对于做web应用的应该很熟悉,其实在很多请求我们返回的都是Json字符串.那对于C#代码如何处理Json字符串呢,.Net封装了一个类叫做JavaScriptSerializer[MSD ...
随机推荐
- 前端模板引擎artTemplate.js
. 关于artTemplate模板引擎的详细原理请移步高性能JavaScript模板引擎原理解析,本文只探讨如何使用.初学前端的人一般对于绑定数据都是使用原生js或者jquery来拼接字符串,此为ha ...
- Android Studio在代码重构中的妙用
代码重构几乎是每个程序员在软件开发中必须要不断去做的事情,以此来不断提高代码的质量.Android Stido(以下简称AS)以其强大的功能,成为当下Android开发工程师最受欢迎的开发工具,也是A ...
- 利用python jieba库统计政府工作报告词频
1.安装jieba库 舍友帮装的,我也不会( ╯□╰ ) 2.上网寻找政府工作报告 3.参照课本三国演义词频统计代码编写 import jieba txt = open("D:\政府工作报告 ...
- cmds系统归并缓慢的处理过程 2017-2-16
检查反应较慢的时间段,数据库整体运行情况,从awr报告总看看是否有异常 以上是两个节点的等待事件排行,其中发现cursor: pin S wait on X等待事件类型是并行,切较高,开始分析 ...
- 数组中有一个数字出现的次数超过数组长度的一半(C、Python)
C语言 1 /* 2 ----------------------------------- 3 动态分配需要的内存大小 4 输入数组元素的值 5 通过函数调用,传地址对数组排序 6 循环每个元素,当 ...
- react 沉思录
react = Virtual DOM + component + data flow + jsx 核心是Virtual DOM结构的状态维护.渲染机制及UI系统的DOM组织功能: 基于Virtual ...
- UI系统的分类
1.DSL系统:UI领域特定语言 html markdown; 与平台无关,只与通用UI领域有关: 2.平台语言系统(通用语言系统) UI概念在平台和通用语言中的表示. 一.信息表达: 基本信息:文本 ...
- Educational Codeforces F. Remainder Problem
[传送门] 题意就是单点加以及查询下标为等差数列位置上的值之和.刚开始看到这道题.我以为一个数的倍数是log级别的.就直接写了发暴力.就T了.还在想为啥,优化了几发才发现不太对劲.然后才想到是$\df ...
- learning shell monitor prog function
[Purpose] Shell script monitor prog function [Eevironment] Ubuntu 16.04 bash env [ ...
- pandas模块中序列Series和列表List的区别
列表:输出结果在中括号中,且各元素之间以逗号分隔 序列:竖着的形式展示数据 print("列表的输出形式:") a=[1,2,3,4] print(a) print(type(a) ...