如何使用libjson创建数组
How create an array using libjson?
我想用libJSON的JSONNode
制作一个数组。我尝试过以下方法,但不起作用:
JSONNode array;
JSONNode foo("word", "foo");
JSONNode bar("word", "bar");
array.push_back(foo);
array.push_back(bar);
这导致:
{
"word": "foo",
"word": "bar"
}
我想要的是:
[
{"word": "foo"},
{"word": "bar"}
]
我很清楚,我并没有指定我想要一个数组。问题是,我搜索了图书馆,在谷歌上搜索了一下,但我找不到办法。有人能帮我吗?
(旁注:我想添加一个"libjson"标记,但似乎还不存在。)
您需要指定您正在创建一个数组和复杂节点:
JSONNode array(JSON_ARRAY);
JSONNode foo(JSON_NODE);
JSONNode bar(JSON_NODE);
foo.push_back(JSONNode("word", "foo"));
bar.push_back(JSONNode("word", "bar"));
array.push_back(foo);
array.push_back(bar);
有关一些基本示例,请参阅libjson-VERSION.zip
中的"入门"文档。
附带说明:我个人发现使用libjson很烦人,而且文档严重缺乏。在我自己的项目中,我使用JsonCpp或(更常见的)Jansson作为我的C/C++JSON API。如果您没有锁定到libjson,您可以尝试一下
相关文章:
- 在c++中为double类型的数组创建一个unique_ptr
- 如何从预定义的数组创建某些元素数组
- 基于数组的列表 - 动态数组创建时出错
- 从 UTF-8 字节数组创建字符串?
- 是否可以在并行区域中为共享 2D 数组创建选定元素的线程本地副本?(共享,私有,障碍:OPenMP)
- C++ 从名称数组创建对象
- 从数组创建 Mat 时,'cv::Mat' 和 'int' 类型不兼容
- 从 std::数组创建十六进制代表
- 在 C++ 结构内声明的数组 A[1] 创建多个实例
- 为多维数组创建内存空间
- 如何使用任何类型的数组创建模板类并为其设置值?
- 从字符串数组创建一个字符数组
- 是否可以在不为该数组创建变量的情况下将数组作为参数传递到函数中?
- 使用类定义数组创建C++类
- 使用具有唯一随机数的结构数组创建多个对象
- 谷歌测试:无法从字符数组创建字符串
- 从 1D 数组创建 2D 数组
- 无法通过一个单向链表数组创建邻接列表
- 如何使用数组创建标准::函数
- 在C++中,返回从本地字符数组创建的字符串是否会导致内存泄漏或未定义的行为