C++Json文件的解析库rapidJson

rapidjson是一个高效的C++ JSON解析/生成器,具有小而全、快且独立等优点。

rapidjson书写Json文件

头文件

#include"rapidjson/stringbuffer.h"
#include"rapidjson/writer.h" 
#include"rapidjson/prettywriter.h" 		//可以自动换行   

将内容写入到json文件

std::string strJsonPath = " ";
//检查文件路径是否存在不存在自动创建该路径(使用Boost库)
boost::filesystem::path fileDir = strJsonPath;     //设置写入Json文件路径
if(!boost::filesystem::exists(fileDir.parent_path())
{
	boost::filesystem::create_directories(fileDir.parent_path());
}

rapidjson::StringBuffer strBuff;				//创建JsonBuffer
rapidjson::PrettyWriter<rapidjson::StringBuffer> writer(strBuff);

//{}大括号
writer.StartObject();
......
writer.EndObject();

//文本标签加内容
writer.Key("str_text");
writer.Int(i_);

writer.Key("str_text");
writer.Double(d_);

//[]中括号
writer.StartArray();
.......
writer.EndArray();

//保存Buffer里面的内容到Json文件
std::ofstream ofs;
ofs.open(strJsonPath,std::ios::out | std::ios::app);
std::string strBuffer = strBuff.GetString();
ofd << strBuffer;
ofs.close();

你可能感兴趣的:(C++,c++,json,开发语言)