JsonCpp Json对象写入
概述
有了上两篇的介绍,对于Json格式数据的解析在大多数场景下已经够用,不过Json数据的应用可不止于读取,还有大量的情况需要用到Json对象的写入,下面就来说一下Json对象的写入。
简单Json对象写入
前面说到,对于简单的Json对象操作,Json::Value对象行为与std::map对象类似,可以使用”[]”通过Key值获取相应的Value值,同样,在写入时,行为也是类似的。若Json::Value对象中没有该Key,则会创建一个相应的Key,并赋予等号右边的值作为Value值。操作方法可以通过一段简单的代码来理解:
//
// main.cpp
// TestJson
//
// Created by Morris on 2016/11/21.
// Copyright © 2016年 Morris. All rights reserved.
//
#include <iostream>
#include <fstream>
#include <string>
#include <json/json.h>
int main(int argc, const char * argv[])
{
std::ifstream ifs;
ifs.open("/Users/Morris/Code/cpp/test/test.json");
Json::Value val;
Json::Value arr;
Json::Reader reader;
val["Name"] = Json::Value("Morris");
val["Age"] = Json::Value(22);
//解析为Json风格的字符串
Json::StyledWriter sw;
std::