C/C++由字符串转JSON/JSON转字符串/数组解析/数组添加

字符串转成JSON(其中str为字符串)

	Json::Reader Reader;
	Json::Value DevJson;
	Reader.parse(str,DevJson);
	int dev_id = DevJson["dev_id"].asInt();
	int index = DevJson["index"].asInt();

  

JSON转字符串(其中DevStr为字符串)

 Json::Value DevJson = DevsJson[i];
 std::string DevStr = DevJson.toStyledString();
 printf("Msg:%s", DevStr.c_str());

  

JSON数组解析:

Json::Reader Reader;
 Json::Value DevsJson;
 Reader.parse(MsgStr, DevsJson);
 int siNum = DevsJson.size();
 for(int i=0; i < siNum; i++)
 {
 Json::Value DevJson = DevsJson[i];
 std::string DevStr = DevJson.toStyledString();
 printf("Msg:%s", DevStr.c_str());
 }

  

数组添加:

 Json::Value root;
 Json::Value person;
 person["name"] = "hello world";
 person["age"] = 100;
 root.append(person);

  

结果:[{"age":100,"name":"hello world"}]

---------------------------------------------------

// MyTest.cpp : 定义控制台应用程序的入口点。
//
#include "stdafx.h"
#include "iostream"
#include "time.h"
#include "map"
#include <windows.h>
#include <sstream>
#include <list>
#include "jsonjson.h"  
#include "stdint.h"
using namespace std;

int _tmain(int argc, _TCHAR* argv[])
{
	Json::Value value;
	uint32_t ssrc1 = 5305490;
	value["ssrc1"] = ssrc1;

	uint32_t ssrc2 = 2152748638;
	value["ssrc2"] = ssrc2;
	
	std::string body = value.toStyledString();
	cout << body << endl;
	Json::Reader reader;
	Json::Value data;
	reader.parse(body, data, false);

	if (data.isMember("ssrc1"))
	{
		cout << "ssrc1";
		if (data["ssrc1"].isInt())
			cout << " is Int" << endl;

		if (data["ssrc1"].isUInt())
			cout << " is UInt" << endl;
	}
	if (data.isMember("ssrc2"))
	{
		cout << "ssrc2";
		if (data["ssrc2"].isInt())
			cout << " is Int" << endl;

		if (data["ssrc2"].isUInt())
			cout << " is UInt" << endl;
	}

	uint32_t ssrc11 = data["ssrc1"].asUInt();
	uint32_t ssrc21 = data["ssrc2"].asUInt();

	cout << "ssrc11:" << ssrc11 << endl;
	cout << "ssrc21:" << ssrc21 << endl;

	system("pause");
	return 0;
}

输出结果:

C/C++由字符串转JSON/JSON转字符串/数组解析/数组添加 

原文链接: https://www.cnblogs.com/blackhumour2018/p/9467232.html

欢迎关注

微信关注下方公众号,第一时间获取干货硬货;公众号内回复【pdf】免费获取数百本计算机经典书籍

    C/C++由字符串转JSON/JSON转字符串/数组解析/数组添加

原创文章受到原创版权保护。转载请注明出处:https://www.ccppcoding.com/archives/279259

非原创文章文中已经注明原地址,如有侵权,联系删除

关注公众号【高性能架构探索】,第一时间获取最新文章

转载文章受原作者版权保护。转载请注明原作者出处!

(0)
上一篇 2023年2月15日 上午4:03
下一篇 2023年2月15日 上午4:04

相关推荐