JANSSON 用法
时间: 2024-02-11 20:57:34 浏览: 27
Jansson是一个与cJSON非常相似的JSON解析库,它支持解析和构建JSON字符串,并且不需要动态分配内存。使用Jansson的方法与cJSON几乎相同。你可以通过json_object或json_array构造json_t对象,并在不使用时通过json_delete来释放。下面是一个使用Jansson构建JSON字符串的示例代码:
```cpp
std::string buildJson(const std::string &strName, int nAge, std::vector<std::string> vClass){
json_t *root = json_object();
json_object_set_new(root, "name", json_string(strName.c_str()));
json_object_set_new(root, "age", json_integer(nAge));
auto *array = json_array();
for(auto cls : vClass){
json_array_append(array, json_string(cls.c_str()));
}
json_object_set_new(root, "class", array);
auto *json = json_dumps(root, JSON_INDENT(0));
std::string strJson = json;
free(json);
json_delete(root);
json_delete(array);
return strJson;
}
```