从XalanDocument获取xml

时间:2019-03-29 03:09:17

标签: c++ xerces xalan

我正在使用Xerces 2.7和Xalan 1.10在旧的Linux服务器上工作,我试图弄清楚如何获得XalanDocument的Xml表示形式。

我已经看了一些示例,但是它们都将输出转储到stdout(虽然我可以将一个内存包装封装在一起以捕获它,但这似乎没有必要)。这些示例还显示了使用样式表的API,但并非在所有情况下都使用该样式表。

注意:升级到最新的Xerces是不可行的,因为我必须与另一个基于2.7的产品共存,而且我还限于gcc 4.1.2。

这是我的类构造函数,它接收初始xml(可以通过添加/删除节点进行修改):

myXalanDoc::myXalanDoc(const string &xmlString): parserLiaison(domSupport)
{
    using xercesc::MemBufInputSource;
    using xalanc::XalanDOMString;
    domSupport.setParserLiaison(&parserLiaison);
    MemBufInputSource theInputSource(
        (const XMLByte *)xmlString.c_str(),
        xmlString.size(),
        "myXalanDoc"
        );
    xalanDoc = parserLiaison.parseXMLStream(theInputSource);
}

我基本上想做类似的事情:

char * myXalanDoc::getXML()
{
    xalanDoc->some_method_returning_a_string().c_str();
}

或类似的内容。字符串结果也可以。

0 个答案:

没有答案