TinyXml2 stream printing

TinyXml2 stream printing

本文关键字:printing stream TinyXml2      更新时间:2023-10-16

如何在TinyXML-2中设置流打印的XMLDocument ?

我试图将代码从TinyXML-1移植到TinyXML-2。在TinyXML-1中,我可以这样做:

TinyXmlPrinter myPrinter;
myDocument.Accept(&myPrinter)
myPrinter.SetStreamPrinting();
myPrinter.CStr();

我已经构建了一个XMLDocument,现在我不确定如何修改它以进行流打印。XMLPrinter::OpenElement, XMLPrinter::PushAttributeXMLPrinter::CloseElement看起来很接近我想要的。那么,我是否必须遍历所有XMLDocument并为每个元素调用这些函数,或者是否有更简单的方法?

正如@JerryJeremiah和@AnonMail在评论中指出的那样,在打印机构造函数中将compact参数设置为true然后调用XMLPrinter::Print函数是有效的。

XMLPrinter myPrinter(0, true, 0); // Set compact to true
myDocument.Print(&myPrinter);
someFunction(myPrinter.CStr());