sgVar – a c++ json parser / generator and var lib

自己写的一个 C++ 通用类型库,支持 json 格式的序列化,代码已经上传 Github , 点击下载

sgVar - a json parser/generator and var lib for c++

源码只有4个文件,两个类,直接拷贝到自己工程中使用即可。另外上传的代码中提供了一个 demo.cpp , 若在 mac 或者 linux 下,make 一下 然后 ./demo 运行,可以看到结果。

下面介绍下基本的使用。

从 json 文件中读取数据

sgJsonParser parser;
sgVar doc = parser.parse("demo.json");
if(parser.fail())
{
    std::cout << parser.getErrorMsg() << "\n";
    return 1;
}

序列化到 json 格式

std::string json_str = doc.toJson();

toJson 获得字符串后您可以将它保存到任何地方。

使用 sgVar

sgVar val;                  // create a null var
val[0] = 11;                // make val be an array
val[2] = "hello sgVar";     // val[1] will be a null var

sgVar &vMap = val[3];       // create a null var
vMap["pi"] = 3.14;          // make vMap be a map


/****** get value from var ******/

bool isFloat = vMap["pi"].isFloat();    // check a var is float

double pi = vMap["pi"].toFloat();    // get the float value of a var
int i0 = val[0].toInt();             // get the int value of a var
std::string str = val[2].toString(); // get the string value of a var


发表评论?

0 条评论。

发表评论