我得到了一些有用的xml数据,我想用Xerces解析(由CodeSynthesis生成)。
在磁盘上它是加密的,所以我加载它,解密它,然后...当Xerces只接受文件作为输入时,我被卡住了。
我曾经想过重载其中一个“阅读器”(即.istream或xercesc::InputSource)并伪造光盘读取,但这看起来既怪异又不优雅。
有没有更简单、更整洁的方法呢?
谢谢!
发布于 2012-03-09 17:26:46
您可以使用MemBufInputSource类:
MemBufInputSource* pMemBufIS = new MemBufInputSource((const XMLByte*)sXmlContent.c_str(), sXmlContent.length(), "SysID", false);
m_saxParser.parse(*pMemBufIS);
delete pMemBufIS;而不是
m_saxParser.parse(sXmlFilePath.c_str());https://stackoverflow.com/questions/9631490
复制相似问题