问题标签 [rapidxml]

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.

0 投票
3 回答
2049 浏览

g++ - linux下用g++编译rapidxml

以下简单程序无法用 gcc 4.4.3 编译

编译产生以下错误:

我做错了什么?

0 投票
2 回答
3460 浏览

c++ - RapidXML XML 解析错误

我正在解析一个非常简单的 XML 文件:

当我使用默认设置解析它时,即 parse<0>(),如下所示:

使用 xml_node.value_size() 或 xml_node.name_size() 查询时,所有节点都位于正确的位置并具有正确的长度,但实际上将名称或值放入字符串甚至只是 printf(),它会返回很多像下面这样的东西:

有没有其他人遇到过这个?

0 投票
1 回答
5015 浏览

c++ - 有什么方法可以使用 c++ 在快速 xml 中通过标签获取 xml 值

有什么方法可以使用 c++ 在 rapidxml 中通过其标记名获取标记的值

我需要获取账面价值,即示例和 book1 值....我们可以使用这个doc.first_node()->value() 获取第一个节点和下一个节点,但我需要有什么方法可以获取类似的值get by name

回答

0 投票
1 回答
768 浏览

c++ - RapidXml 线程安全吗?

RapidXml的文档说

池维护 RAPIDXML_STATIC_POOL_SIZE 字节的静态分配内存。在静态内存耗尽之前,不会进行动态内存分配。当静态内存耗尽时,池通过使用全局 new[] 和 delete[] 操作符分配每个大小为 RAPIDXML_DYNAMIC_POOL_SIZE 的额外内存块

我将其解释为:RapidXML 使用全局内存池。全局内存池线程上的操作是否安全?即,我可以在整个程序中使用多个 RapidXML 解析器实例而不必考虑线程问题吗?

0 投票
1 回答
1699 浏览

c++ - Rapidxml 和 UTF8

我正在使用 RapidXML,但我需要将我的字符串写为 UTF8,在 Rapidxml 手册中解释它支持 UTF8,请告诉我如何通过 C++ ISO 使用它?

0 投票
2 回答
2611 浏览

c++ - 添加数字(双精度/浮点数)作为 RapidXML 节点的属性

我对 RapidXML 很陌生。我想构建一个 Xml 文档并将其打印到文件中。一切正常,但我不确定我是否正确执行了该过程的一部分:

将属性添加到双精度节点。

我正在使用标准 C++ 的东西:

有没有更优雅/更快的方式?像(一厢情愿的想法):

我需要将大量的双打保存到我的 xml 文件中,所以性能是我关心的主要问题。

问候,奥利弗

0 投票
3 回答
1872 浏览

c++ - 试图理解 RapidXml 内存分配

我在 C++ 程序中使用 RapidXml。好吧,没问题,它可以工作。我只是不明白为什么我必须使用指针而不是变量值...如果您查看 RapidXml wiki 页面,提供了一些示例,这是 RapidXml 开发人员提供的示例:

好吧,为什么它使用指向 xml_node 的指针???

我问这个是因为我需要一个函数来返回一个 xml_node ...

所以如果我这样做:

xml_node<>* mynode = ... return *mynode;

可以吗??因为我想稍后使用返回的节点及其所有子节点。这样做好不好?如果没有,我该怎么办?

0 投票
1 回答
5576 浏览

c++ - 如何使用 RapidXml for C++ 使用字符串在 xml_document 中插入新节点?

我想使用 RapidXml 将 src2 中的节点附加到 src 中的树内,我这样做:

好吧,它编译得很好,但是在运行时我遇到了这个可怕的错误:

void rapidxml::xml_node::append_node(rapidxml::xml_node*) [with Ch = char]: 断言 `child && !child->parent() && child->type() != node_document' 失败。中止

我不知道该怎么做。问题很简单,我需要将节点附加到树(xml),但我有字符串。

我想这是因为我试图将一棵树的一个节点插入另一棵树......只有为给定树分配的节点才能添加到该树......这很糟糕......

有没有一种方法可以让我以简单的方式做我需要的事情?

谢谢你。

0 投票
2 回答
2101 浏览

c++ - Rapidxml 没有在 Visual Studio 2010 上编译。我做错了什么?

我正在我们的代码库中将 XML 解析器从 TinyXml 切换到 RapidXml。

但是,RapidXml 似乎无法与 Visual Studio 2010 一起编译。

基本上,在我正在做的头文件中

并且在实施中

就在那里,在我的第二行代码中,Visual Studio 说

c:\users\name\development\rapidxml\rapidxml.hpp(420):错误 C2061:语法错误:标识符“内存”
1> c:\users\name\development\rapidxml\rapidxml.hpp(418):编译时类模板成员函数 'rapidxml::xml_node<> *rapidxml::memory_pool::allocate_node(rapidxml::node_type,const Ch *,const Ch *,size_t,size_t)'
1> with
1> [
1> Ch=char
1 > ]
1> c:\users\name\development\rapidxml\rapidxml.hpp(1359) : 请参阅正在编译的类模板实例化 'rapidxml::memory_pool'
1> 与
1> [
1> Ch=char
1> ]
1> c:\users\name\development\xmlresource.cpp(70) : 请参阅正在编译的类模板实例化 'rapidxml::xml_document<>' 的引用

这是漫长的编码日的结束,这就是今天的内容。你们那里知识渊博的人知道我在这里做错了什么吗?

0 投票
4 回答
1031 浏览

c++ - MSVC 中构建了奇怪的代码中断。这是什么意思?

我正在尝试将 rapidxml 包含到我当前的项目中。但是,它不会构建。

Visual Studio 会抱怨这段代码(rapidxml.hpp:419+451):

编译器会说

rapidxml.hpp(420):错误 C2061:语法错误:标识符“内存”

我有点明白这会如何混淆编译器。它实际上也让我很困惑。在那里做的(memory)部分是new(memory) xml_attribute<Ch>什么?

如果我删除那(memory)部分,它编译就好了。
此外,gcc 可以很好地编译它(memory)

编辑:
哦,我超载newDEBUG_NEW做一些内存调试。DEBUG_NEW不支持放置新。