原文地址:http://blog.csdn.net/qqmcy/article/details/39152695
这个里主要说的是如何编写JSON格式的字符串。直接上代码比较简单。
MakeJson.h
//
// MakeJson.h
// cpp4
//
// Created by 杜甲 on 14-9-9.
//
//
#ifndef __cpp4__MakeJson__
#define __cpp4__MakeJson__
#include "cocos2d.h"
#include "json/document.h"
#include "json/writer.h"
#include "json/stringbuffer.h"
USING_NS_CC;
class MakeJson : public Ref
{
public:
CREATE_FUNC(MakeJson);
virtual bool init();
std::string getTestJson();
};
#endif /* defined(__cpp4__MakeJson__) */
//
// MakeJson.cpp
// cpp4
//
// Created by 杜甲 on 14-9-9.
//
//
#include "MakeJson.h"
bool MakeJson::init()
{
bool bRef = false;
do {
bRef = true;
} while (0);
return bRef;
}
std::string MakeJson::getTestJson()
{
auto path = FileUtils::getInstance()->getWritablePath();
log("%s",path.c_str());
//在这个路径下添加一个json文件
path.append("test.json");
rapidjson::Document d1;
d1.SetObject();
rapidjson::Document::AllocatorType& allocator = d1.GetAllocator();
rapidjson::Value array(rapidjson::kArrayType);
rapidjson::Value object(rapidjson::kObjectType);
object.AddMember("id", "1", allocator);
object.AddMember("name", "234", allocator);
object.AddMember("年龄", "111", allocator);
array.PushBack(object, allocator);
d1.AddMember("propety", "PLAYER-TO", allocator);
d1.AddMember("player", array, allocator);
rapidjson::StringBuffer buffer;
rapidjson::Writer<rapidjson::StringBuffer> write(buffer);
d1.Accept(write);
return StringUtils::format("%s",buffer.GetString());
}