Asposecpplib

Represents a non-cached, forward-only writer way of generating streams or files containing XML data. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument. More...

Inherits System::Xml::XmlWriter.

Public Types

typedef SharedPtr< XmlTextWriterPtr
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Xml::XmlWriter
typedef SharedPtr< XmlWriterPtr
 An alias for shared pointer to an instance of this class. More...
 
- Public Types inherited from System::Object
typedef SmartPtr< Objectptr
 Alias for smart pointer type. More...
 

Public Member Functions

 XmlTextWriter (const String &outputFileName, const SharedPtr< System::Text::Encoding > &encoding=SharedPtr< System::Text::Encoding >())
 Constructs an instance of XmlWriter class and initializes it with the specified output file and encoding. More...
 
 XmlTextWriter (const SharedPtr< System::IO::Stream > &stream, const SharedPtr< System::Text::Encoding > &encoding=SharedPtr< System::Text::Encoding >())
 Constructs an instance of XmlTextWriter class and initializes it with the specified stream. More...
 
 XmlTextWriter (const SharedPtr< System::IO::TextWriter > &text_writer)
 Constructs an instance of XmlTextWriter class and initializes it with the specified TextWriter. More...
 
 XmlTextWriter (const SharedPtr< System::Text::StringBuilder > &string_builder)
 Constructs an instance of XmlTextWriter class and initializes it with the specified StringBuilder. More...
 
 XmlTextWriter (xmlBuffer *buf)
 Constructs a new instance of XmlTextWriter and forces it to use the specified xmlBuffer object. More...
 
 XmlTextWriter (xmlOutputBuffer *buf)
 Constructs a new instance of XmlTextWriter and forces it to use the specified xmlOutputBuffer object. More...
 
virtual ~XmlTextWriter ()
 Destructor. More...
 
WriteState get_WriteState () override
 Returns a value indicating the state of the current writer. More...
 
void Close () override
 Closes the write stream. More...
 
void Flush () override
 Flushes the content of the buffers to the underlying stream and also flushes the underlying stream. More...
 
void WriteStartDocument () override
 Writes an XML declaration with version "1.0". More...
 
void WriteStartDocument (bool standalone) override
 Writes an XML declaration with version "1.0" and the 'standalone' attribute with the specified value. More...
 
void WriteStartElement (String localName) override
 Writes out a start tag of an element with the specified local name. More...
 
void WriteStartElement (String localName, String ns) override
 Writes out a start tag of an element with the specified local name and associates it with the specified namespace. More...
 
void WriteStartElement (String prefix, String localName, String ns) override
 Writes out a start tag of an element with the specified local name and prefix and associates it with the specified namespace. More...
 
void WriteStartAttribute (String localName) override
 Writes the start of an attribute with the specified local name. More...
 
void WriteStartAttribute (String localName, String ns) override
 Writes the start of an attribute with the specified local name and namespace. More...
 
void WriteStartAttribute (String prefix, String localName, String ns) override
 Writes the start of an attribute with the specified prefix, local name and namespace. More...
 
void WriteAttributeString (String localName, String value) override
 Writes out an attribute with the specified local name and value. More...
 
void WriteAttributeString (String localName, String ns, String value) override
 Writes out an attribute with the specified local name and value and associates it with the specified namespace. More...
 
void WriteAttributeString (String prefix, String localName, String ns, String value) override
 Writes out an attribute with the specified prefix, local name and value and associates it with the specified namespace. More...
 
void WriteAttributes (SharedPtr< XmlReader > reader, bool defattr) override
 Writes out all the attributes found at the current position in the XmlReader. More...
 
void WriteElementString (String localName, String value) override
 Writes out an element with the specified local name and value. More...
 
void WriteElementString (String localName, String ns, String value) override
 Writes out an element with the specified local name and value and associates it with the specified namespace. More...
 
void WriteElementString (String prefix, String localName, String ns, String value) override
 Writes out an element with the specified prefix, local name and value and associates it with the specified namespace. More...
 
void WriteDocType (String name, String pubid, String sysid, String subset) override
 Writes out a DOCTYPE declaration with the specified name and attributes. More...
 
void WriteCData (String text) override
 Writes out a CData node. More...
 
void WriteComment (String text) override
 Writes out a comment node. More...
 
void WriteProcessingInstruction (String name, String text) override
 Writes out a processing instruction with the specified name and text. More...
 
void WriteEntityRef (String name) override
 Writes out an entity reference as {ampersand}name;. More...
 
void WriteCharEntity (char_t ch) override
 Writes out a character entity for the specified Unicode character value. More...
 
void WriteChars (System::ArrayPtr< char16_t > buffer, int32_t index, int32_t count) override
 Writes text one buffer at a time. More...
 
void WriteString (String text) override
 Writes the specified text content. More...
 
void WriteSurrogateCharEntity (char16_t lowChar, char16_t highChar) override
 Generates and writes the surrogate character entity for the surrogate character pair. More...
 
void WriteWhitespace (String ws) override
 Writes the specified white spaces. More...
 
void WriteRaw (String text) override
 Writes the specified string content without escaping the special characters. More...
 
void WriteRaw (ArrayPtr< char_t > buffer, int index, int count) override
 Writes the specified range of characters without escaping the special characters. More...
 
void WriteBase64 (ArrayPtr< uint8_t > buffer, int index, int count) override
 Base64-encodes the specified range of bytes in the specified byte array and writes out the resulting text. More...
 
void WriteBinHex (ArrayPtr< uint8_t > buffer, int index, int count) override
 Encodes the specified range of bytes in the specifie array as BinHex and writes out the resulting text. More...
 
void WriteEndAttribute () override
 Closes the previous WriteStartAttribute(System::String) call. More...
 
void WriteEndElement () override
 Closes an element and pops the corresponding namespace scope. If the element is empty, the short form of the closing tag is used. More...
 
void WriteFullEndElement () override
 Closes an element and pops the corresponding namespace scope. The full form of closing tag is used. More...
 
void WriteEndDocument () override
 Closes all open elements and attributes and puts the writer in the Start state. More...
 
String LookupPrefix (String ns) override
 Gets the closest prefix defined in the current namespace scope for the specified namespace URI. More...
 
Formatting get_Formatting () const
 Returns a value that indicates how the output is formatted. More...
 
void set_Formatting (Formatting value)
 Sets a value that indicates how the output is formatted. More...
 
void set_Namespaces (bool value)
 Sets a value that indicates whether to do namespace support. More...
 
void set_Indentation (int value)
 Sets an integer value that indicates how many IndentChars should be writen for each level in the hierarchy when Formatting is set to Formatting::Indented. More...
 
int get_Indentation () const
 Returns an integer value that indicates how many IndentChars should be writen for each level in the hierarchy when Formatting is set to Formatting::Indented. More...
 
void set_IndentChar (char_t value)
 Sets a character that should be used for indenting when Formatting is set to Formatting::Indented. More...
 
char_t get_IndentChar () const
 Returns a character that should be used for indenting when Formatting is set to Formatting::Indented. More...
 
void set_QuoteChar (char_t value)
 Sets a character that should be used to quote attribute values. More...
 
SharedPtr< System::IO::Streamget_BaseStream () const
 Returns the underlying stream object. More...
 
xmlTextWriter * native () const
 Returns a pointer to the underlying libxml2 xmlTextWriter object. More...
 
- Public Member Functions inherited from System::IDisposable
virtual void Dispose ()
 Does nothing. More...
 
- Public Member Functions inherited from System::Object
 Object ()
 Creates object. Initializes all internal data structures. More...
 
virtual ~Object ()
 Destroys object. Frees all internal data structures. More...
 
 Object (Object const &x)
 Copy constructor. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
Objectoperator= (Object const &x)
 Assignment operator. Doesn't copy anything, really, just initializes new object and enables copy constructing subclasses. More...
 
ObjectSharedRefAdded ()
 Increments shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int SharedRefRemovedSafe ()
 Decrements and returns shared reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
int RemovedSharedRefs (int count)
 Decreases shared reference count by specified value. More...
 
Detail::SmartPtrCounter * WeakRefAdded ()
 Increments weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
void WeakRefRemoved ()
 Decrements weak reference count. Shouldn't be called directly; instead, use smart pointers or ThisProtector. More...
 
Detail::SmartPtrCounter * GetCounter ()
 Gets reference counter data structure associated with the object. More...
 
int SharedCount () const
 Gets current value of shared reference counter. More...
 
void Lock ()
 Implements C# lock() statement locking. Call directly or use LockContext sentry object. More...
 
void Unlock ()
 Implements C# lock() statement unlocking. Call directly or use LockContext sentry object. More...
 
virtual bool Equals (ptr obj)
 Compares objects using C# Object.Equals semantics. More...
 
virtual int32_t GetHashCode () const
 Analog of C# Object.GetHashCode() method. Enables hashing of custom objects. More...
 
virtual String ToString () const
 Analog of C# Object.ToString() method. Enables converting custom objects to string. More...
 
virtual ptr MemberwiseClone () const
 Analog of C# Object.MemberwiseClone() method. Enables cloning custom types. More...
 
virtual const TypeInfoGetType () const
 Gets actual type of object. Analog of C# System.Object.GetType() call. More...
 
virtual bool Is (const TypeInfo &targetType) const
 Check if object represents an instance of type described by targetType. Analog of C# 'is' operator. More...
 
virtual void SetTemplateWeakPtr (uint32_t argument)
 Set n'th template argument a weak pointer (rather than shared). Allows switching pointers in containers to weak mode. More...
 
virtual bool FastCast (const Details::FastRttiBase &helper, void **out_ptr) const
 For internal purposes only. More...
 
template<>
bool ReferenceEquals (String const &str, std::nullptr_t)
 Specialization of Object::ReferenceEquals for case of string and nullptr. More...
 
template<>
bool ReferenceEquals (String const &str1, String const &str2)
 Specialization of Object::ReferenceEquals for case of strings. More...
 

Protected Member Functions

void ApplySettings (const SharedPtr< XmlWriterSettings > &settings)
 Applies XmlWriterSettings to the current XmlWriter object. More...
 
- Protected Member Functions inherited from System::Xml::XmlWriter
 XmlWriter ()
 Constructs a new instance of XmlWriter class. More...
 

Protected Attributes

xmlTextWriter * m_writer
 The underlynig libxml2 XML text writer. More...
 
Formatting m_formatting
 Indicates how the output is formatted. More...
 
int m_indentation
 Indicates how many IndentChars should be writen for each level in the hierarchy when Formatting is set to Formatting::Indented. More...
 
char_t m_indent_char
 A character that should be used for indenting when Formatting is set to Formatting::Indented. More...
 
WriteState m_state
 Indicates the state of the current writer. More...
 
SharedPtr< XmlWriterSettingsm_settings
 The current XmlWriter object's settings. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from System::Xml::XmlWriter
static XmlWriter::Ptr Create (const String &outputFileName)
 Constructs an instance of XmlWriter class and initializes it with the specified output file. More...
 
static XmlWriter::Ptr Create (const String &outputFileName, const SharedPtr< XmlWriterSettings > &settings)
 Constructs an instance of XmlWriter class and initializes it with the specified output file and settings. More...
 
static XmlWriter::Ptr Create (const SharedPtr< System::IO::Stream > &stream, const SharedPtr< XmlWriterSettings > &settings=nullptr)
 Constructs an instance of XmlWriter class and initializes it with the specified stream and settings. More...
 
static XmlWriter::Ptr Create (const SharedPtr< System::Text::StringBuilder > &builder, const SharedPtr< XmlWriterSettings > &settings)
 Constructs an instance of XmlWriter class and initializes it with the specified StringBuilder and settings. More...
 
static XmlWriter::Ptr Create (const SharedPtr< System::IO::TextWriter > &text_writer)
 Constructs an instance of XmlWriter class and initializes it with the specified TextWriter. More...
 
static XmlWriter::Ptr Create (const SharedPtr< System::IO::TextWriter > &text_writer, const SharedPtr< XmlWriterSettings > &settings)
 Constructs an instance of XmlWriter class and initializes it with the specified TextWriter and settings. More...
 
- Static Public Member Functions inherited from System::Object
static bool ReferenceEquals (ptr const &objA, ptr const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, T const &objB)
 Compares objects by reference. More...
 
template<typename T >
static std::enable_if<!IsSmartPtr< T >::value, bool >::type ReferenceEquals (T const &objA, std::nullptr_t)
 Reference-compares value type object with nullptr. More...
 
template<typename T1 , typename T2 >
static std::enable_if< IsSmartPtr< T1 >::value &&IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares reference type objects in C# style. More...
 
template<typename T1 , typename T2 >
static std::enable_if<!IsSmartPtr< T1 >::value &&!IsSmartPtr< T2 >::value, bool >::type Equals (T1 const &objA, T2 const &objB)
 Compares value type objects in C# style. More...
 
static const TypeInfoType ()
 Implements C# typeof(System.Object) construct. More...
 
template<>
bool Equals (float const &objA, float const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 
template<>
bool Equals (double const &objA, double const &objB)
 Emulates C#-style floating point comparison where two NaNs are considered equal even though according to IEC 60559:1989 NaN is not equal to any value, including NaN. More...
 

Detailed Description

Represents a non-cached, forward-only writer way of generating streams or files containing XML data. Objects of this class should only be allocated using System::MakeObject() function. Never create instance of this type on stack or using operator new, as it will result in runtime errors and/or assertion faults. Always wrap this class into System::SmartPtr pointer and use this pointer to pass it to functions as argument.

Member Typedef Documentation

◆ Ptr

An alias for shared pointer to an instance of this class.

Constructor & Destructor Documentation

◆ XmlTextWriter() [1/6]

System::Xml::XmlTextWriter::XmlTextWriter ( const String outputFileName,
const SharedPtr< System::Text::Encoding > &  encoding = SharedPtrSystem::Text::Encoding >() 
)

Constructs an instance of XmlWriter class and initializes it with the specified output file and encoding.

Parameters
outputFileNameA filesystem path specifying a file to which the writer will write
encodingThe encoding to use

◆ XmlTextWriter() [2/6]

System::Xml::XmlTextWriter::XmlTextWriter ( const SharedPtr< System::IO::Stream > &  stream,
const SharedPtr< System::Text::Encoding > &  encoding = SharedPtrSystem::Text::Encoding >() 
)

Constructs an instance of XmlTextWriter class and initializes it with the specified stream.

Parameters
streamA stream to which the writer will write
encodingThe encoding to use

◆ XmlTextWriter() [3/6]

System::Xml::XmlTextWriter::XmlTextWriter ( const SharedPtr< System::IO::TextWriter > &  text_writer)

Constructs an instance of XmlTextWriter class and initializes it with the specified TextWriter.

Parameters
text_writerA TextWriter to which the writer will write

◆ XmlTextWriter() [4/6]

System::Xml::XmlTextWriter::XmlTextWriter ( const SharedPtr< System::Text::StringBuilder > &  string_builder)

Constructs an instance of XmlTextWriter class and initializes it with the specified StringBuilder.

Parameters
string_builderA StringBuilder to which the writer will write

◆ XmlTextWriter() [5/6]

System::Xml::XmlTextWriter::XmlTextWriter ( xmlBuffer *  buf)

Constructs a new instance of XmlTextWriter and forces it to use the specified xmlBuffer object.

Parameters
bufAn xmlBuffer object to use

◆ XmlTextWriter() [6/6]

System::Xml::XmlTextWriter::XmlTextWriter ( xmlOutputBuffer *  buf)

Constructs a new instance of XmlTextWriter and forces it to use the specified xmlOutputBuffer object.

Parameters
bufAn xmlOutputBuffer object to use

◆ ~XmlTextWriter()

virtual System::Xml::XmlTextWriter::~XmlTextWriter ( )
virtual

Destructor.

Member Function Documentation

◆ ApplySettings()

void System::Xml::XmlTextWriter::ApplySettings ( const SharedPtr< XmlWriterSettings > &  settings)
protected

Applies XmlWriterSettings to the current XmlWriter object.

◆ Close()

void System::Xml::XmlTextWriter::Close ( )
overridevirtual

Closes the write stream.

Implements System::Xml::XmlWriter.

◆ Flush()

void System::Xml::XmlTextWriter::Flush ( )
overridevirtual

Flushes the content of the buffers to the underlying stream and also flushes the underlying stream.

Implements System::Xml::XmlWriter.

◆ get_BaseStream()

SharedPtr<System::IO::Stream> System::Xml::XmlTextWriter::get_BaseStream ( ) const

Returns the underlying stream object.

◆ get_Formatting()

Formatting System::Xml::XmlTextWriter::get_Formatting ( ) const

Returns a value that indicates how the output is formatted.

◆ get_Indentation()

int System::Xml::XmlTextWriter::get_Indentation ( ) const

Returns an integer value that indicates how many IndentChars should be writen for each level in the hierarchy when Formatting is set to Formatting::Indented.

◆ get_IndentChar()

char_t System::Xml::XmlTextWriter::get_IndentChar ( ) const

Returns a character that should be used for indenting when Formatting is set to Formatting::Indented.

◆ get_WriteState()

WriteState System::Xml::XmlTextWriter::get_WriteState ( )
overridevirtual

Returns a value indicating the state of the current writer.

Implements System::Xml::XmlWriter.

◆ LookupPrefix()

String System::Xml::XmlTextWriter::LookupPrefix ( String  ns)
overridevirtual

Gets the closest prefix defined in the current namespace scope for the specified namespace URI.

Parameters
nsThe namespace URI
Returns
The closest prefix defined in the current namespace scope for ns

Implements System::Xml::XmlWriter.

◆ native()

xmlTextWriter* System::Xml::XmlTextWriter::native ( ) const

Returns a pointer to the underlying libxml2 xmlTextWriter object.

◆ set_Formatting()

void System::Xml::XmlTextWriter::set_Formatting ( Formatting  value)

Sets a value that indicates how the output is formatted.

Parameters
valueThe value to set

◆ set_Indentation()

void System::Xml::XmlTextWriter::set_Indentation ( int  value)

Sets an integer value that indicates how many IndentChars should be writen for each level in the hierarchy when Formatting is set to Formatting::Indented.

Parameters
valueThe value to set

◆ set_IndentChar()

void System::Xml::XmlTextWriter::set_IndentChar ( char_t  value)

Sets a character that should be used for indenting when Formatting is set to Formatting::Indented.

Parameters
valueThe value to set

◆ set_Namespaces()

void System::Xml::XmlTextWriter::set_Namespaces ( bool  value)

Sets a value that indicates whether to do namespace support.

Parameters
valueThe value to set

◆ set_QuoteChar()

void System::Xml::XmlTextWriter::set_QuoteChar ( char_t  value)

Sets a character that should be used to quote attribute values.

Parameters
valueThe value to set.

◆ WriteAttributes()

void System::Xml::XmlTextWriter::WriteAttributes ( SharedPtr< XmlReader reader,
bool  defattr 
)
overridevirtual

Writes out all the attributes found at the current position in the XmlReader.

Parameters
readerThe XmlReader from which to copy the attributes.
defattrtrue to copy the default attributes from the XmlReader; otherwise, false.

Implements System::Xml::XmlWriter.

◆ WriteAttributeString() [1/3]

void System::Xml::XmlTextWriter::WriteAttributeString ( String  localName,
String  ns,
String  value 
)
overridevirtual

Writes out an attribute with the specified local name and value and associates it with the specified namespace.

Parameters
localNameThe attribute's local name
nsThe namespace to associate the attribute with
valueThe attribute's value

Implements System::Xml::XmlWriter.

◆ WriteAttributeString() [2/3]

void System::Xml::XmlTextWriter::WriteAttributeString ( String  localName,
String  value 
)
overridevirtual

Writes out an attribute with the specified local name and value.

Parameters
localNameThe attribute's local name
valueThe attribute's value

Implements System::Xml::XmlWriter.

◆ WriteAttributeString() [3/3]

void System::Xml::XmlTextWriter::WriteAttributeString ( String  prefix,
String  localName,
String  ns,
String  value 
)
overridevirtual

Writes out an attribute with the specified prefix, local name and value and associates it with the specified namespace.

Parameters
prefixThe attribute's prefix
localNameThe attribute's local name
nsThe namespace to associate the attribute with
valueThe attribute's value

Implements System::Xml::XmlWriter.

◆ WriteBase64()

void System::Xml::XmlTextWriter::WriteBase64 ( ArrayPtr< uint8_t >  buffer,
int  index,
int  count 
)
overridevirtual

Base64-encodes the specified range of bytes in the specified byte array and writes out the resulting text.

Parameters
bufferA byte array
indexA 0-based index of the element in the array at which the range to encode begins
countThe number of elements in the range

Implements System::Xml::XmlWriter.

◆ WriteBinHex()

void System::Xml::XmlTextWriter::WriteBinHex ( ArrayPtr< uint8_t >  buffer,
int  index,
int  count 
)
overridevirtual

Encodes the specified range of bytes in the specifie array as BinHex and writes out the resulting text.

Parameters
bufferA byte array
indexA 0-based index of the element in the array at which the range to encode begins
countThe number of elements in the range

Implements System::Xml::XmlWriter.

◆ WriteCData()

void System::Xml::XmlTextWriter::WriteCData ( String  text)
overridevirtual

Writes out a CData node.

Parameters
textThe content of the node

Implements System::Xml::XmlWriter.

◆ WriteCharEntity()

void System::Xml::XmlTextWriter::WriteCharEntity ( char_t  ch)
overridevirtual

Writes out a character entity for the specified Unicode character value.

Parameters
chUnicode character for which to generate a character entity.

Implements System::Xml::XmlWriter.

◆ WriteChars()

void System::Xml::XmlTextWriter::WriteChars ( System::ArrayPtr< char16_t >  buffer,
int32_t  index,
int32_t  count 
)
overridevirtual

Writes text one buffer at a time.

Parameters
bufferCharacter array containing the text to write.
indexThe position in the buffer indicating the start of the text to write.
countThe number of characters to write.

Implements System::Xml::XmlWriter.

◆ WriteComment()

void System::Xml::XmlTextWriter::WriteComment ( String  text)
overridevirtual

Writes out a comment node.

Parameters
textThe content of the node

Implements System::Xml::XmlWriter.

◆ WriteDocType()

void System::Xml::XmlTextWriter::WriteDocType ( String  name,
String  pubid,
String  sysid,
String  subset 
)
overridevirtual

Writes out a DOCTYPE declaration with the specified name and attributes.

Parameters
nameThe name of DOCTYPE declaration
pubidThe public identifier of DOCTYPE declaration
sysidThe system identifier of DOCTYPE declaration
subsetThe subset parameter of DOCTYPE declaration

Implements System::Xml::XmlWriter.

◆ WriteElementString() [1/3]

void System::Xml::XmlTextWriter::WriteElementString ( String  localName,
String  ns,
String  value 
)
overridevirtual

Writes out an element with the specified local name and value and associates it with the specified namespace.

Parameters
localNameThe element's local name
nsThe namespace to associate the element with
valueThe element's value

Implements System::Xml::XmlWriter.

◆ WriteElementString() [2/3]

void System::Xml::XmlTextWriter::WriteElementString ( String  localName,
String  value 
)
overridevirtual

Writes out an element with the specified local name and value.

Parameters
localNameThe element's local name
valueThe element's value

Implements System::Xml::XmlWriter.

◆ WriteElementString() [3/3]

void System::Xml::XmlTextWriter::WriteElementString ( String  prefix,
String  localName,
String  ns,
String  value 
)
overridevirtual

Writes out an element with the specified prefix, local name and value and associates it with the specified namespace.

Parameters
prefixThe attribute's prefix
localNameThe element's local name
nsThe namespace to associate the element with
valueThe element's value

Implements System::Xml::XmlWriter.

◆ WriteEndAttribute()

void System::Xml::XmlTextWriter::WriteEndAttribute ( )
overridevirtual

Closes the previous WriteStartAttribute(System::String) call.

Implements System::Xml::XmlWriter.

◆ WriteEndDocument()

void System::Xml::XmlTextWriter::WriteEndDocument ( )
overridevirtual

Closes all open elements and attributes and puts the writer in the Start state.

Implements System::Xml::XmlWriter.

◆ WriteEndElement()

void System::Xml::XmlTextWriter::WriteEndElement ( )
overridevirtual

Closes an element and pops the corresponding namespace scope. If the element is empty, the short form of the closing tag is used.

Implements System::Xml::XmlWriter.

◆ WriteEntityRef()

void System::Xml::XmlTextWriter::WriteEntityRef ( String  name)
overridevirtual

Writes out an entity reference as {ampersand}name;.

Parameters
nameThe name of the entity reference.

Implements System::Xml::XmlWriter.

◆ WriteFullEndElement()

void System::Xml::XmlTextWriter::WriteFullEndElement ( )
overridevirtual

Closes an element and pops the corresponding namespace scope. The full form of closing tag is used.

Implements System::Xml::XmlWriter.

◆ WriteProcessingInstruction()

void System::Xml::XmlTextWriter::WriteProcessingInstruction ( String  name,
String  text 
)
overridevirtual

Writes out a processing instruction with the specified name and text.

Parameters
nameThe name of the processing instruction
textThe text to be added to the processing instruction

Implements System::Xml::XmlWriter.

◆ WriteRaw() [1/2]

void System::Xml::XmlTextWriter::WriteRaw ( ArrayPtr< char_t >  buffer,
int  index,
int  count 
)
overridevirtual

Writes the specified range of characters without escaping the special characters.

Parameters
bufferThe character array
indexA 0-based index at which the range to write begins
countThe number of characters in the range

Implements System::Xml::XmlWriter.

◆ WriteRaw() [2/2]

void System::Xml::XmlTextWriter::WriteRaw ( String  text)
overridevirtual

Writes the specified string content without escaping the special characters.

Parameters
textThe text to write

Implements System::Xml::XmlWriter.

◆ WriteStartAttribute() [1/3]

void System::Xml::XmlTextWriter::WriteStartAttribute ( String  localName)
overridevirtual

Writes the start of an attribute with the specified local name.

Parameters
localNameThe attribute's local name

Implements System::Xml::XmlWriter.

◆ WriteStartAttribute() [2/3]

void System::Xml::XmlTextWriter::WriteStartAttribute ( String  localName,
String  ns 
)
overridevirtual

Writes the start of an attribute with the specified local name and namespace.

Parameters
localNameThe attribute's local name
nsThe attribute's namespace

Implements System::Xml::XmlWriter.

◆ WriteStartAttribute() [3/3]

void System::Xml::XmlTextWriter::WriteStartAttribute ( String  prefix,
String  localName,
String  ns 
)
overridevirtual

Writes the start of an attribute with the specified prefix, local name and namespace.

Parameters
prefixThe attribute's prefix
localNameThe attribute's local name
nsThe attribute's namespace

Implements System::Xml::XmlWriter.

◆ WriteStartDocument() [1/2]

void System::Xml::XmlTextWriter::WriteStartDocument ( )
overridevirtual

Writes an XML declaration with version "1.0".

Implements System::Xml::XmlWriter.

◆ WriteStartDocument() [2/2]

void System::Xml::XmlTextWriter::WriteStartDocument ( bool  standalone)
overridevirtual

Writes an XML declaration with version "1.0" and the 'standalone' attribute with the specified value.

Parameters
standaloneThe value of the 'standalone' attribute in the XML declaration

Implements System::Xml::XmlWriter.

◆ WriteStartElement() [1/3]

void System::Xml::XmlTextWriter::WriteStartElement ( String  localName)
overridevirtual

Writes out a start tag of an element with the specified local name.

Parameters
localNameThe element's local name

Implements System::Xml::XmlWriter.

◆ WriteStartElement() [2/3]

void System::Xml::XmlTextWriter::WriteStartElement ( String  localName,
String  ns 
)
overridevirtual

Writes out a start tag of an element with the specified local name and associates it with the specified namespace.

Parameters
localNameThe element's local name
nsThe namespace to associate the element with

Implements System::Xml::XmlWriter.

◆ WriteStartElement() [3/3]

void System::Xml::XmlTextWriter::WriteStartElement ( String  prefix,
String  localName,
String  ns 
)
overridevirtual

Writes out a start tag of an element with the specified local name and prefix and associates it with the specified namespace.

Parameters
prefixThe element's prefix
localNameThe element's local name
nsThe namespace to associate the element with

Implements System::Xml::XmlWriter.

◆ WriteString()

void System::Xml::XmlTextWriter::WriteString ( String  text)
overridevirtual

Writes the specified text content.

Parameters
textThe text to write

Implements System::Xml::XmlWriter.

◆ WriteSurrogateCharEntity()

void System::Xml::XmlTextWriter::WriteSurrogateCharEntity ( char16_t  lowChar,
char16_t  highChar 
)
overridevirtual

Generates and writes the surrogate character entity for the surrogate character pair.

Parameters
lowCharThe low surrogate.This must be a value between 0xDC00 and 0xDFFF.
highCharThe high surrogate.This must be a value between 0xD800 and 0xDBFF.

Implements System::Xml::XmlWriter.

◆ WriteWhitespace()

void System::Xml::XmlTextWriter::WriteWhitespace ( String  ws)
overridevirtual

Writes the specified white spaces.

Parameters
wsThe string with white space characters to write

Implements System::Xml::XmlWriter.

Member Data Documentation

◆ m_formatting

Formatting System::Xml::XmlTextWriter::m_formatting
protected

Indicates how the output is formatted.

◆ m_indent_char

char_t System::Xml::XmlTextWriter::m_indent_char
protected

A character that should be used for indenting when Formatting is set to Formatting::Indented.

◆ m_indentation

int System::Xml::XmlTextWriter::m_indentation
protected

Indicates how many IndentChars should be writen for each level in the hierarchy when Formatting is set to Formatting::Indented.

◆ m_settings

SharedPtr<XmlWriterSettings> System::Xml::XmlTextWriter::m_settings
protected

The current XmlWriter object's settings.

◆ m_state

WriteState System::Xml::XmlTextWriter::m_state
protected

Indicates the state of the current writer.

◆ m_writer

xmlTextWriter* System::Xml::XmlTextWriter::m_writer
protected

The underlynig libxml2 XML text writer.