自己写的一个 C++ 通用类型库,支持 json 格式的序列化,代码已经上传 Github , 点击下载。
源码只有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 条评论。