加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

rapidjson组装继续简化------人生苦短,我用rapidjson

发布时间:2020-12-16 19:02:05 所属栏目:百科 来源:网络整理
导读:看最简单的: #include iostream#include stdio.h#includeunistd.h#include sys/types.h#include sys/stat.h#include fcntl.h#includesstream// 请自己下载开源的rapidjson#include "rapidjson/prettywriter.h"#include "rapidjson/rapidjson.h"#include "ra

看最简单的:

#include <iostream>
#include <stdio.h>
#include<unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include<sstream>

// 请自己下载开源的rapidjson
#include "rapidjson/prettywriter.h"
#include "rapidjson/rapidjson.h"
#include "rapidjson/document.h"
#include "rapidjson/stringbuffer.h"
#include "rapidjson/writer.h"
#include "rapidjson/memorystream.h"

using namespace std;
using rapidjson::Document;
using rapidjson::StringBuffer;
using rapidjson::Writer;
using namespace rapidjson;

void test()
{
	Document document;
	document.SetObject();
	Document::AllocatorType& allocator = document.GetAllocator();
	Value object(rapidjson::kObjectType);
	
	document.AddMember("age",29,allocator);
	document.AddMember("name","taoge",allocator);

	StringBuffer buffer;
	Writer<StringBuffer> writer(buffer);
	document.Accept(writer);
	string str = buffer.GetString();
	
	cout << str << endl;
}

int main(int argc,char *argv[])
{
	test();
	return 0;
}
结果:{"age":29,"name":"taoge"}


再看数组:

#include <iostream>
#include <stdio.h>
#include<unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include<sstream>

// 请自己下载开源的rapidjson
#include "rapidjson/prettywriter.h"
#include "rapidjson/rapidjson.h"
#include "rapidjson/document.h"
#include "rapidjson/stringbuffer.h"
#include "rapidjson/writer.h"
#include "rapidjson/memorystream.h"

using namespace std;
using rapidjson::Document;
using rapidjson::StringBuffer;
using rapidjson::Writer;
using namespace rapidjson;

void test()
{
	Document document;
	document.SetObject();
	Document::AllocatorType& allocator = document.GetAllocator();
	Value array(rapidjson::kArrayType);
	Value object(rapidjson::kObjectType);
	
	object.AddMember("age",30,allocator);
	object.AddMember("name",allocator);
	array.PushBack(object,allocator);

	document.AddMember("json",array,allocator);
	
	StringBuffer buffer;
	Writer<StringBuffer> writer(buffer);
	document.Accept(writer);
	string str = buffer.GetString();
	
	cout << str << endl;
}

int main(int argc,char *argv[])
{
	test();
	return 0;
}
结果:{"json":[{"age":30,"name":"taoge"}]}


再来看一个:

#include <iostream>
#include <stdio.h>
#include<unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include<sstream>

// 请自己下载开源的rapidjson
#include "rapidjson/prettywriter.h"
#include "rapidjson/rapidjson.h"
#include "rapidjson/document.h"
#include "rapidjson/stringbuffer.h"
#include "rapidjson/writer.h"
#include "rapidjson/memorystream.h"

using namespace std;
using rapidjson::Document;
using rapidjson::StringBuffer;
using rapidjson::Writer;
using namespace rapidjson;

void test()
{
	Document document;
	document.SetObject();
	Document::AllocatorType& allocator = document.GetAllocator();
	Value array(rapidjson::kArrayType);
	Value object(rapidjson::kObjectType);
	
	object.AddMember("age",allocator);

	document.AddMember("oh1",allocator);
	document.AddMember("oh2","hehe",char *argv[])
{
	test();
	return 0;
}
结果:{"oh1":[{"age":30,"name":"taoge"}],"oh2":"hehe"}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读