#include <tinyxml.h>
Inheritance diagram for TiXmlPrinter:

Public Member Functions | |
| virtual bool | VisitEnter (const TiXmlDocument &doc) |
| Visit a document. | |
| virtual bool | VisitExit (const TiXmlDocument &doc) |
| Visit a document. | |
| virtual bool | VisitEnter (const TiXmlElement &element, const TiXmlAttribute *firstAttribute) |
| Visit an element. | |
| virtual bool | VisitExit (const TiXmlElement &element) |
| Visit an element. | |
| virtual bool | Visit (const TiXmlDeclaration &declaration) |
| Visit a declaration. | |
| virtual bool | Visit (const TiXmlText &text) |
| Visit a text node. | |
| virtual bool | Visit (const TiXmlComment &comment) |
| Visit a comment node. | |
| virtual bool | Visit (const TiXmlUnknown &unknown) |
| Visit an unknow node. | |
| void | SetIndent (const char *_indent) |
| Set the indent characters for printing. | |
| const char * | Indent () |
| Query the indention string. | |
| void | SetLineBreak (const char *_lineBreak) |
| Set the line breaking string. | |
| const char * | LineBreak () |
| Query the current line breaking string. | |
| void | SetStreamPrinting () |
| Switch over to "stream printing" which is the most dense formatting without linebreaks. | |
| const char * | CStr () |
| Return the result. | |
| size_t | Size () |
| Return the length of the result string. | |
| const std::string & | Str () |
| Return the result. | |
The TiXmlPrinter is useful when you need to:
When constructed, the TiXmlPrinter is in its default "pretty printing" mode. Before calling Accept() you can call methods to control the printing of the XML document. After TiXmlNode::Accept() is called, the printed document can be accessed via the CStr(), Str(), and Size() methods.
TiXmlPrinter uses the Visitor API.
TiXmlPrinter printer; printer.SetIndent( "\t" ); doc.Accept( &printer ); fprintf( stdout, "%s", printer.CStr() );
| void TiXmlPrinter::SetIndent | ( | const char * | _indent | ) | [inline] |
Set the indent characters for printing.
By default 4 spaces but tab () is also useful, or null/empty string for no indentation.
| void TiXmlPrinter::SetLineBreak | ( | const char * | _lineBreak | ) | [inline] |
Set the line breaking string.
By default set to newline (
). Some operating systems prefer other characters, or can be set to the null/empty string for no indenation.
| void TiXmlPrinter::SetStreamPrinting | ( | ) | [inline] |
Switch over to "stream printing" which is the most dense formatting without linebreaks.
Common when the XML is needed for network transmission.
1.4.7