C++ 使用Xerces从内存加载xml
我得到了一些有用的xml数据,我想用Xerces(由代码合成生成)进行解析 在光盘上它是加密的,所以我加载它,解开它,然后。。。我被卡住了,因为Xerces只接受文件作为输入 我曾考虑过让一个“阅读器”(即std::istream或xercesc::InputSource)过载,并伪造光盘读数,但它看起来像不雅一样古怪 有没有更简单、更整洁的方法 谢谢 您可以使用C++ 使用Xerces从内存加载xml,c++,xml,file,memory,xerces,C++,Xml,File,Memory,Xerces,我得到了一些有用的xml数据,我想用Xerces(由代码合成生成)进行解析 在光盘上它是加密的,所以我加载它,解开它,然后。。。我被卡住了,因为Xerces只接受文件作为输入 我曾考虑过让一个“阅读器”(即std::istream或xercesc::InputSource)过载,并伪造光盘读数,但它看起来像不雅一样古怪 有没有更简单、更整洁的方法 谢谢 您可以使用类: MemBufInputSource* pMemBufIS = new MemBufInputSource((const XMLB
类:
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());
您可以使用
类:
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());