boost-propertytree相关内容

如何迭代提升属性树?

我知道正在接近 boost 属性树,并看到它是用于 c++ 编程的 boost 库的一个很好的特性. 嗯,我有一个疑问?如何使用迭代器或类似方法迭代属性树? 在参考中只是一个浏览树的例子: BOOST_FOREACH 但是没有别的了吗?类似于 stl 的容器之类的东西?这将是一个更好的解决方案,谈到代码质量...... 解决方案 BOOST_FOREACH只是一种方便的迭代 ..
发布时间:2022-01-10 15:10:02 C/C++开发

使用 Boost 解析 XML 属性

我想与您分享一个问题,我在尝试使用 Boost 库(1.52.0 版)处理 C++ 中 XML 元素的某些属性时遇到的问题.给定以下代码: #define ATTR_SET "."#define XML_PATH1 "./pets.xml"#include #include #include #include #include 使用命名空间标准;使用命名空间提升;使用命名空间 boost::pr ..
发布时间:2021-12-24 15:30:53 C/C++开发

使用属性树在 Boost 中创建 JSON 数组

我正在尝试使用 boost 属性树创建一个 JSON 数组. 文档 说:“JSON 数组映射到节点.每个元素都是一个名称为空的子节点." 所以我想创建一个空名称的属性树,然后调用 write_json(...) 来获取数组.但是,文档没有告诉我如何创建未命名的子节点.我试过 ptree.add_child("", value),但结果是: 断言`!p.empty() &&“put_c ..
发布时间:2021-12-24 15:13:58 C/C++开发

boost::property_tree XML 漂亮打印

我正在使用 boost::property_tree 在我的应用程序中读取和写入 XML 配置文件.但是当我编写文件时,输出看起来有点难看,文件中有很多空行.问题是它也应该由人类编辑,所以我想获得更好的输出. 举个例子,我写了一个小测试程序: #include #include int main(空){使用 boost::property_tree::ptree;ptree pt;//读取 ..
发布时间:2021-12-24 15:11:27 C/C++开发

使用 Boost 序列化和反序列化 JSON

我是 C++ 的新手.使用 boost 序列化和反序列化 std::Map 类型的数据的最简单方法是什么?我找到了一些使用 PropertyTree 的例子,但它们对我来说很模糊. 解决方案 注意 property_tree 将键解释为路径,例如放置一对 "a.b"="z" 将创建一个 {"a":{"b":"z"}} JSON,而不是一个 {"a.b":"z"}.否则,使用 propert ..
发布时间:2021-12-24 15:08:00 C/C++开发

为什么 Boost 属性树 write_json 将所有内容保存为字符串?有可能改变吗?

我正在尝试使用 boost 属性树 write_json 进行序列化,它将所有内容保存为字符串,并不是数据错误,但我每次都需要显式转换它们,并且我想在其他地方使用它们.(如在 python 或其他 C++ json(非 boost)库中) 这里是一些示例代码以及我根据语言环境得到的内容: boost::property_tree::ptree 根、arr、elem1、elem2;elem1 ..
发布时间:2021-12-24 15:07:41 其他开发

Boost/Property Tree 确定值类型

我想使用 Boost/Property Tree 作为与我的应用程序的一种同步.为此,我计划使用 Zeroc/ICE 进行状态同步(使用观察模式和双向连接). 但是,要以有效的方式执行此操作,我需要以某种方式指定应用程序的 I/O (显然). 这对于将值导入树中非常有效(因为我可以使用 InputStream 转换为任何原始类型并捕获发生的错误)但是当我想导出值时它会妨碍. 使用 ..
发布时间:2021-07-10 20:06:48 C/C++开发

Boost .ini文件解析器-多个节名称

我正在使用boost :: property_tree来解析ini文件. 我希望能够执行以下操作: data.ini: [电子]位置= 0,0,0速度= 0,0,0[质子]位置= 1,0,0速度= 0,0,0[质子]位置= -1,0,0速度= 0,0,0 当前程序正在运行,并出现以下错误:节名称重复显然是因为有两个 [质子] 节. 是否有另一种方法来解析这样的文件?我应该 ..
发布时间:2021-05-16 18:30:27 C/C++开发

Boost属性树指定允许的值

我想使用boosts属性树来处理我的c ++应用程序的设置,因为它似乎在这种情况下被广泛使用。 我的问题:更改值时在属性树中(通过xml解析或手动),是否可以预先指定键的允许值列表? 例如如果我想做一个简单的“是/否”设置,是否必须使用if-条件检查这些值,或者我可以以某种方式教我的树只接受特定键的“是”和“否”两个值?提前,以便在错误时引发异常。 解决方案 您可以为此使用翻译器。 ..
发布时间:2020-06-06 20:15:19 C/C++开发

提升ptree数字数组

我使用以下代码创建数字数组。 运行以下代码后,我得到以下结果: { “”:“ 1.100000”, “”:“ 2.200000”, “”:“ 3.300000” } 这很好,除了我想要的结果必须是数字数组而不是串。通过 boost :: property_tree :: ptree(x)直接添加数字也给我一个错误。如何产生我的输出json结果? { “” ..
发布时间:2020-06-06 20:15:16 C/C++开发

提升ptree访问第一个没有路径名的元素

我正在使用boost库来操作JSON字符串,并且我想访问第一个元素。 我想知道是否存在一些便捷的方法来访问没有路径名的ptree的第一个元素。 我这样做了,但我没有任何价值: namespace pt = boost :: property_tree; pt :: ptree pt2; string json =“ \” ok\“”; istringstream i ..
发布时间:2020-06-06 20:15:14 C/C++开发