问题标签 [boost-propertytree]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 从 boost::property_tree 读取数组出现空白
我正在尝试使用此问题boost::property_tree
中显示的方法从 a 中读取数组数据。在该示例中,数组首先作为字符串读取,转换为字符串流,然后读入数组。在实施该解决方案时,我注意到我的字符串是空的。
示例输入(json):
这两种数组表示法都被 boost json 解析器解释为数组。我确信数据存在于属性树中,因为在调用 json writer 时,数组数据存在于输出中。
这是失败的示例:
我什么时候paramName
得到"Object1.param1"
“10.0”作为字符串输出,什么时候得到一个空字符串,如果paramName
是树中不存在的东西,则返回。"Object1.initPos"
paramName
"Not Found"
c++ - boost::property_:tree - 解析和处理数据
我刚刚发现了 boost::property_tree,这似乎是我问题的完美答案。我编写了一个小测试程序来从 xml 文件中提取特定数据。我已使用文档中提供的示例作为指南。xml 文件:test.xml:
编码:
注意:我正在尝试提取值(ABC 和内部值,如 A - string - 6 - ABC,对于每个 GROUP - 以及每组“行”,我将对其进行处理,然后以不同的格式输出)。请参阅代码中的注释以了解我尝试过的内容。
到目前为止,最好的结果是:(print() 中的内容:
我无法从多条记录中获取数据!请帮忙,给我一个建议 - 我做错了什么?
谢谢你。
c++ - 使用属性树在 boost 中解析 xml
我有以下 xml 文件。它显示了 2 个驱动器(托架 1 和托架 2)的固件版本信息。此时,除了托架 1 和托架 2 外,两个驱动器的一切看起来都相似。但我希望它们具有不同的固件版本。我需要阅读并能够比较托架 1 和托架 2 驱动器是否具有相同的固件版本。我正在使用 Boost(Red Hat 和 C++ 上的 1.41 版属性树)
我的 C++ 不是那么好,关于 Boost 的文档真的很烂。到目前为止,我可以读取 xml 文件,但无法搜索并查看固件版本是否相同。我尝试了几种不同的方法,但运气不佳。我真的很感激这方面的一些帮助。
我解决了一些问题。有人可以告诉我如何获取所有节点吗?此代码当前找到第一个匹配项并打印它,仅此而已。如果我知道将有多少节点,我可以使用 for 循环。其他人有更好的主意,比如使用迭代器吗?如果是这样,请告诉我如何做到这一点。
c++ - Boost 属性树:删除一个节点
你将如何从 boost xml 属性树中删除一个节点?
我有这样的文件:
我知道如何迭代和打印所有文件夹,但是我将如何删除其中一项并将 xml 保存回来?
c++ - boost::property_tree 编译错误(错误 C2061:语法错误:标识符“p”)
我正在努力编译一些利用 boost 属性树的代码。我正在使用 Visual Studio 2010。
如果我尽可能简化代码以重现错误,代码如下所示...
...并且完整的错误如下所示...
对我来说,我的 ApplieiTunesLibraryImporter.cpp 文件的第 24 行只是
所以,编译器不喜欢我使用它。当我使用类似的东西时,我会遇到类似的错误
但上面的代码是我可以使错误发生的最简单的代码。
导致编译错误的 boost 文件 (allocator_utilities.hpp) 中的代码如下所示,但对我来说很神秘。
如果有人想尝试重现,这里是 .h 代码。
这一切都变成了一些大脑融化,所以如果有人能对此有所了解,将不胜感激。
干杯。
c++ - 包括 boost::property_tree 会引发编译器错误
我尝试在 SystemC 项目中使用 boost 属性树。项目用途:
标题:
代码:
但是当我将 property_tree.hpp 添加到我的头文件时,gcc 会抛出以下内容:
还有更多人说同样的话..
这发生在包含时间而不是使用时。这可能是由于缺少包含或命名空间引起的吗?
c++ - 提升属性树访问冲突
我一直在尝试使用 boost 的属性树解析 XML 文件,但是每次我想获取字符串的值时,它都会引发访问冲突异常。它适用于整数,所以我有点困惑。这是一些代码:
和 XML 文件:
首先我认为这是因为我没有为字符串分配空间,但 malloc() 和 new char[] 都没有帮助。
任何帮助,将不胜感激。提前致谢 :)
c++ - 在 Boost 属性树 1.50 中使用 read_xml() 时使用多个标志
所以我发现这里引用的“漂亮打印”修剪空白标志:boost::property_tree XML 漂亮打印
我找到了 Boost::Property_Tree 1.50 的 read_xml() 函数的文档:http: //www.boost.org/doc/libs/1_50_0/doc/html/boost/property_tree/xml_parser/read_xml_id1073248.html
但是我一生都无法弄清楚如何在读取时同时启用忽略注释和修剪空白标志,然后编写 XML!任何帮助,将不胜感激。
我认为我的主要问题是函数原型。使用的标志如何转换为整数,就像函数原型似乎要求的那样?
c++ - 我们如何在 boost 属性树中获取对象
我需要理解和修改示例代码。我被困在某个时候,找不到任何解决方案。这是代码:
有人可以告诉我这里的“第二”是什么意思吗?
这是程序读取的 JSON 示例:
还有一个问题,当我尝试编译代码时,我也收到以下错误。这是什么意思,我该如何解决?
非常感谢。
c++ - 来自 Boost 的 typedef'ing basic_ptree
我正在为一个项目使用 Boost.PropertyTree,我想对 Key 和 Data 使用用户定义的类型,而不是 Boost 在 ptree typedef 中使用的 std::string。
但是,当我自己 typedef basic_ptree 时,会出现以下编译器错误:
以下代码片段显示了我如何 typedef basic_tree 并获取编译器错误的示例:
所以我的问题是,我如何正确地键入它?如果有兴趣,我正在运行 MSVC 2012。
提前致谢!