问题标签 [xerces-c]

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 投票
1 回答
2656 浏览

c++ - XercesC 将输出设置为 UTF-8

我正在使用 XercesC Lib 来创建我的数据的序列化。如何将其设置为 UTF-8?它总是用 UTF-16 生成的,我找不到改变它的方法。

当我在 Java 端使用 JAXB 反序列化时,我总是得到一个content is not allowed in prolog,到目前为止,这是我在 XML 中看到的唯一区别。当我尝试在 JAXB 中进行本地反序列化时,它可以工作。当我使用我的 XercesC XML 时,我得到了这个错误。当我尝试使用 XML 插件在 Notepad++ 中对其进行格式化时,它还说存在错误,但没有告诉我任何细节。

0 投票
1 回答
1054 浏览

xerces-c - XercesDOMParser* 和 DOMDocument* 在 DOMElement* 之前超出范围

简短版本:XercesDOMParser* a和在他们用来创建 DOMDocument*的 a 之前超出范围 是否安全?DOMElement*

长版:

在下面的代码片段中,我创建了一个本地XercesDOMParser*DOMDocument*以获取文档的根元素并将其存储在成员 DOMElement*变量中。XercesDOMParser*和都在DOMDocument*构造函数的末尾超出范围,但 DOMElement*作为成员变量存在。这个可以吗?到目前为止,它似乎有效,但我很紧张我以后可能会遇到问题。

0 投票
1 回答
1121 浏览

c++ - 使用 xerces C++ 解析 xml 文件

我有一个要解析的 xml 文件,以便进一步使用所包含的信息。任何人都可以帮助我使用 xerces C++ 代码来解析它吗?我在 C++ 中也有使用 xerces 库的 xml 创建代码。

0 投票
1 回答
726 浏览

c++ - XercesC 2.7 无法获取 DOMWriter

我正在编写一个服务器,我想在我的 Java 客户端中使用 XML。我正在使用带有 XercesC 3.1.1 的 CygWin 进行开发测试,这工作正常(我用这个函数循环了 30000 并且没有崩溃)。但是,在我的目标机器上,它运行的是带有 XercesC 2.7 的 HP-UX。为了实现 XercesC 实现中的差异,我编写了一个单独的类来处理每个版本。

当我尝试使用 XercesC 2.7 运行代码时。当我尝试创建 DOMWriter 时,我总是得到一个 NULL 指针,而在再次尝试时,我总是得到一个 SIGABORT。

由于我在谷歌上找不到任何东西,我希望有人能阐明我在这里做错了什么。我一直在查看随 XercesC 源提供的示例代码,并且我也有一些来自其他程序员的生产代码,我看不出它有什么不同。

我尝试创建一个有点长的 SSCE,但它是我可以创建的最短样本。

xml_serialize.h

xml_serialize.cpp

输出

更新

我终于设法为 cygwin 编译了 2.7 并在那里测试了上面的代码。这工作正常,所以 HP-UX 环境一定有问题。

0 投票
1 回答
212 浏览

macos - unix shell中命令周围的括号

unix shell中命令周围的括号是什么意思。例如:

当我使用括号和不使用它时有什么区别?我的真实情况是:

我正在尝试xercesc为 mac os 构建,并且很少遇到麻烦。我正在尝试对 make 包进行一些更改。

0 投票
0 回答
250 浏览

c++ - 使用堆上的指针成员为类创建复制构造函数

简短版本: 我可以安全地为具有成员指针变量的类创建一个复制构造函数,其中一个在堆上,类型为xercesc::XercesDOMParser*xercesc::DOMDocument*?如果是这样,怎么做?

长版:

我写了一个类来包装一个 Xercesc 文档对象。它有两个成员变量,分别是指向 aXercesDOMParser和 a的指针DOMDocument。这是显示这两个成员的类声明部分:

指针_pParser_pDocument在构造函数中初始化。这是带有相关代码的构造函数的缩写版本。请注意,它_pParser是使用运算符创建的new并且位于堆上:

析构函数删除成员变量_pParser

到目前为止,我通过将它们标记为私有而不是定义它们来禁止复制构造函数和赋值运算符。

现在我想,如果可能的话,为这个类创建一个复制构造函数,这样我就可以使它成为一个函数的返回类型,以这种方式:

我看到的第一个问题是我的析构函数做了一个delete _pParser;. 所以我认为这是一个问题。我很确定我必须delete从析构函数中删除。但后来我有一个内存泄漏。

我真的不知道如何处理这个问题。也许这是不可能的。有没有人有我可以使用的方法?

0 投票
1 回答
3089 浏览

windows-7 - '错误 C2733:重载函数的第二个 C 链接'

我正在尝试使用 Visual Studio 2005 在 64 位 Windows 7 上构建 xercesc 3.1。我从官方网站下载了源代码并按照那里给出的说明进行操作(基本上,只需“打开 .sln 并构建项目 XercesLib),但我得到了以下编译错误:

我注意到此错误消息中的 SDK 版本是6.1,而7.0是随 Windows 7 发布的。所以我尝试添加C:\Program Files\Microsoft SDKs\Windows\v7.0\include到项目的附加包含目录中,但这没有效果。

我还检查了我是否打开了正确的 sln 文件——我使用了标有“VC8”的文件,我认为它应该对应于 VS2005。

0 投票
1 回答
1869 浏览

xml - 在 Xerces 中读取和写入 unicode 字符串

我想在 Windows 平台上从 XML 文件中读取和写入阿拉伯字符。我的 c++ 程序将 Xerces 用于 XML 文件。正如 Xerces 文档所指出的,它支持 Unicode 字符。我用

喜欢

方法,但它返回???? 特点。怎么了?(在 Xerces 文档中提示 XMLCh 是 wchar_t)

0 投票
0 回答
348 浏览

c++ - DOMLSSerializer:无法打印大文档

我正在使用带有 DOMLSOutput 的 DOMLSSerialize 将 DOMDocument 打印到 xml 文件中。我需要打印大量的 xml(10-20Mb 之间)。

当我尝试打印大于 ~6Mb 的文档时遇到问题。xml 文件仅包含 ~6Mo,它在 6Mo 处被裁剪,结束标签不在文档中。

我知道使用 DOMLSSerializer 和 DOMDocument 意味着文档是一次性打印的。因此,我很确定我的问题是由于 DOMLSSerializer、DOMDocument 或 DOMLSOutput 中某处的缓冲区太小......但是,我不知道缓冲区在哪里以及如何使它更大。

在此先感谢您的帮助。

0 投票
1 回答
595 浏览

c++ - Xerces-c: XMLString::transcode 谜题

我有这段代码:

令我困惑的是需要注释掉 threadID 的释放——如果我不立即删除坏指针时代码会出现段错误。但是由于 threadID 是 XMLString::transcode 的结果,它肯定应该被释放吗?