我正在使用带有DOMLSOutput的DOMLSSerialize将DOMDocument打印到xml文件。我需要打印相当大量的xml(10-20Mb之间)。
当我尝试打印大于〜6Mb的文档文档时遇到问题。 xml文件只包含〜6Mo,它会在6Mo时被裁剪,结束标记不在文档中。
据我所知,使用DOMLSSerializer和DOMDocument意味着一次打印文档。因此,我很确定我的问题是由于DOMLSSerializer,DOMDocument或DOMLSOutput中某个缓冲区太小而导致的......但是,我不知道缓冲区在哪里以及如何使其更大。
提前感谢您的帮助。
DOMImplementation *pImplement = DOMImplementationRegistry::getDOMImplementation(L"LS");
xercesc::DOMLSSerializer* _pSerializer = ((DOMImplementationLS*)pImplement)->createLSSerializer();
XMLFormatTarget *formatTarget = new LocalFileFormatTarget("Debug.xml");
xercesc::DOMLSOutput* _output = ((DOMImplementationLS*)pImplement)->createLSOutput();
_output->setByteStream(formatTarget);
//later
_pSerializer->write(pmyDOMDocument, _output);
_pDOMDocument->release();