Есть ли хороший способ извлечь из MSXML2 :: IXMLDOMNodePtr строку с отступом (красивую / удобочитаемую) из XML?
Я могу извлечь XML с помощью MSXML2::IXMLDOMNode::get_xml()
и снова проанализировать его ... Что-то вродеэто:
MSXML2::IXMLDOMNodePtr node = ...;
MSXML2::IMXWriterPtr writer;
writer.CreateInstance(__uuidof(MSXML2::MXXMLWriter60));
writer->indent = true;
writer->omitXMLDeclaration = true;
MSXML2::ISAXXMLReaderPtr reader;
reader.CreateInstance(__uuidof(MSXML2::SAXXMLReader60));
reader->putContentHandler(MSXML2::ISAXContentHandlerPtr(writer));
reader->parse(node->xml);
_bstr_t xml = writer->output;
но это, кажется, очень неэффективный способ сделать что-то довольно тривиальное ...